summaryrefslogtreecommitdiff
path: root/cpp/src/Ice
diff options
context:
space:
mode:
authorJose <jose@zeroc.com>2015-12-01 17:36:19 +0100
committerJose <jose@zeroc.com>2015-12-01 17:36:19 +0100
commit2029ff368e49fae489b8ec8fc12f7d126b182dfb (patch)
tree6075d652b7851831c39e6f22004d8720864f1a60 /cpp/src/Ice
parentThe default LMDB map size for IceGrid and IceStorm is now 10MB (Windows) (diff)
downloadice-2029ff368e49fae489b8ec8fc12f7d126b182dfb.tar.bz2
ice-2029ff368e49fae489b8ec8fc12f7d126b182dfb.tar.xz
ice-2029ff368e49fae489b8ec8fc12f7d126b182dfb.zip
C++11 mapping initial commit
Diffstat (limited to 'cpp/src/Ice')
-rwxr-xr-xcpp/src/Ice/.depend.mak672
-rw-r--r--cpp/src/Ice/ACM.cpp12
-rw-r--r--cpp/src/Ice/ACM.h6
-rw-r--r--cpp/src/Ice/Application.cpp12
-rw-r--r--cpp/src/Ice/AsyncResult.cpp55
-rw-r--r--cpp/src/Ice/BasicStream.cpp73
-rw-r--r--cpp/src/Ice/BatchRequestQueue.cpp12
-rw-r--r--cpp/src/Ice/BatchRequestQueue.h2
-rw-r--r--cpp/src/Ice/CollocatedRequestHandler.cpp53
-rw-r--r--cpp/src/Ice/CollocatedRequestHandler.h12
-rw-r--r--cpp/src/Ice/CommunicatorI.cpp185
-rw-r--r--cpp/src/Ice/CommunicatorI.h49
-rw-r--r--cpp/src/Ice/ConnectRequestHandler.cpp33
-rw-r--r--cpp/src/Ice/ConnectRequestHandler.h12
-rw-r--r--cpp/src/Ice/ConnectRequestHandlerF.h4
-rw-r--r--cpp/src/Ice/ConnectionFactory.cpp114
-rw-r--r--cpp/src/Ice/ConnectionFactory.h24
-rw-r--r--cpp/src/Ice/ConnectionI.cpp274
-rw-r--r--cpp/src/Ice/ConnectionI.h43
-rw-r--r--cpp/src/Ice/ConnectionRequestHandler.cpp2
-rw-r--r--cpp/src/Ice/ConnectionRequestHandler.h3
-rw-r--r--cpp/src/Ice/DynamicLibrary.cpp4
-rw-r--r--cpp/src/Ice/EndpointFactoryManager.cpp4
-rw-r--r--cpp/src/Ice/EndpointI.cpp2
-rw-r--r--cpp/src/Ice/EndpointI.h15
-rw-r--r--cpp/src/Ice/EndpointIF.h21
-rw-r--r--cpp/src/Ice/EventHandler.cpp2
-rw-r--r--cpp/src/Ice/EventHandler.h8
-rw-r--r--cpp/src/Ice/EventHandlerF.h5
-rw-r--r--cpp/src/Ice/Exception.cpp2
-rw-r--r--cpp/src/Ice/FactoryTable.cpp35
-rw-r--r--cpp/src/Ice/GCObject.cpp3
-rw-r--r--cpp/src/Ice/IPEndpointI.cpp40
-rw-r--r--cpp/src/Ice/IPEndpointI.h7
-rw-r--r--cpp/src/Ice/IPEndpointIF.h6
-rw-r--r--cpp/src/Ice/ImplicitContextI.cpp50
-rw-r--r--cpp/src/Ice/ImplicitContextI.h8
-rw-r--r--cpp/src/Ice/Incoming.cpp18
-rw-r--r--cpp/src/Ice/IncomingAsync.cpp8
-rw-r--r--cpp/src/Ice/Initialize.cpp70
-rw-r--r--cpp/src/Ice/Instance.cpp48
-rw-r--r--cpp/src/Ice/Instance.h10
-rw-r--r--cpp/src/Ice/InstrumentationI.cpp116
-rw-r--r--cpp/src/Ice/InstrumentationI.h57
-rw-r--r--cpp/src/Ice/LocatorInfo.cpp80
-rw-r--r--cpp/src/Ice/LocatorInfo.h24
-rw-r--r--cpp/src/Ice/LoggerAdminI.cpp215
-rw-r--r--cpp/src/Ice/LoggerAdminI.h6
-rw-r--r--cpp/src/Ice/LoggerI.cpp2
-rw-r--r--cpp/src/Ice/LoggerI.h3
-rw-r--r--cpp/src/Ice/Makefile2
-rw-r--r--cpp/src/Ice/Makefile.mak2
-rw-r--r--cpp/src/Ice/MetricsAdminI.cpp10
-rw-r--r--cpp/src/Ice/Object.cpp77
-rw-r--r--cpp/src/Ice/ObjectAdapterFactory.cpp38
-rw-r--r--cpp/src/Ice/ObjectAdapterFactory.h11
-rw-r--r--cpp/src/Ice/ObjectAdapterI.cpp117
-rw-r--r--cpp/src/Ice/ObjectAdapterI.h43
-rw-r--r--cpp/src/Ice/ObjectFactoryManager.cpp18
-rw-r--r--cpp/src/Ice/ObjectFactoryManager.h10
-rw-r--r--cpp/src/Ice/ObserverHelper.cpp4
-rw-r--r--cpp/src/Ice/OpaqueEndpointI.cpp30
-rw-r--r--cpp/src/Ice/OpaqueEndpointI.h6
-rw-r--r--cpp/src/Ice/Outgoing.cpp11
-rw-r--r--cpp/src/Ice/OutgoingAsync.cpp397
-rw-r--r--cpp/src/Ice/PluginManagerI.cpp3
-rw-r--r--cpp/src/Ice/PluginManagerI.h2
-rw-r--r--cpp/src/Ice/PropertiesAdminI.cpp13
-rw-r--r--cpp/src/Ice/PropertiesAdminI.h8
-rw-r--r--cpp/src/Ice/PropertiesI.cpp2
-rw-r--r--cpp/src/Ice/PropertiesI.h8
-rw-r--r--cpp/src/Ice/Protocol.cpp2
-rw-r--r--cpp/src/Ice/Proxy.cpp1183
-rw-r--r--cpp/src/Ice/ProxyFactory.cpp18
-rw-r--r--cpp/src/Ice/ProxyFactory.h14
-rw-r--r--cpp/src/Ice/Reference.cpp30
-rw-r--r--cpp/src/Ice/Reference.h25
-rw-r--r--cpp/src/Ice/ReferenceFactory.cpp12
-rw-r--r--cpp/src/Ice/ReferenceFactory.h12
-rw-r--r--cpp/src/Ice/RequestHandler.cpp2
-rw-r--r--cpp/src/Ice/RequestHandler.h8
-rw-r--r--cpp/src/Ice/RequestHandlerFactory.cpp12
-rw-r--r--cpp/src/Ice/RequestHandlerFactory.h2
-rw-r--r--cpp/src/Ice/ResponseHandler.cpp7
-rw-r--r--cpp/src/Ice/ResponseHandler.h10
-rw-r--r--cpp/src/Ice/RetryQueue.cpp6
-rw-r--r--cpp/src/Ice/RetryQueue.h6
-rw-r--r--cpp/src/Ice/RouterInfo.cpp115
-rw-r--r--cpp/src/Ice/RouterInfo.h50
-rw-r--r--cpp/src/Ice/Selector.cpp22
-rw-r--r--cpp/src/Ice/Service.cpp12
-rw-r--r--cpp/src/Ice/SlicedData.cpp7
-rw-r--r--cpp/src/Ice/StreamI.cpp10
-rw-r--r--cpp/src/Ice/StreamI.h6
-rw-r--r--cpp/src/Ice/SysLoggerI.cpp2
-rw-r--r--cpp/src/Ice/SysLoggerI.h3
-rw-r--r--cpp/src/Ice/TcpEndpointI.cpp47
-rw-r--r--cpp/src/Ice/TcpEndpointI.h6
-rw-r--r--cpp/src/Ice/TcpTransceiver.cpp4
-rw-r--r--cpp/src/Ice/ThreadPool.cpp28
-rw-r--r--cpp/src/Ice/ThreadPool.h2
-rw-r--r--cpp/src/Ice/TraceUtil.cpp8
-rw-r--r--cpp/src/Ice/UdpEndpointI.cpp44
-rw-r--r--cpp/src/Ice/UdpEndpointI.h7
-rw-r--r--cpp/src/Ice/UdpTransceiver.cpp2
-rw-r--r--cpp/src/Ice/Value.cpp69
-rw-r--r--cpp/src/Ice/VirtualShared.h31
-rw-r--r--cpp/src/Ice/WSEndpoint.cpp66
-rw-r--r--cpp/src/Ice/WSEndpoint.h5
109 files changed, 3865 insertions, 1363 deletions
diff --git a/cpp/src/Ice/.depend.mak b/cpp/src/Ice/.depend.mak
index 00b45064bf5..f858d5d4a32 100755
--- a/cpp/src/Ice/.depend.mak
+++ b/cpp/src/Ice/.depend.mak
@@ -7,7 +7,7 @@ Communicator.h: \
"$(slicedir)/Ice/LoggerF.ice" \
"$(slicedir)/Ice/InstrumentationF.ice" \
"$(slicedir)/Ice/ObjectAdapterF.ice" \
- "$(slicedir)/Ice/ObjectFactoryF.ice" \
+ "$(slicedir)/Ice/ObjectFactory.ice" \
"$(slicedir)/Ice/RouterF.ice" \
"$(slicedir)/Ice/LocatorF.ice" \
"$(slicedir)/Ice/PluginF.ice" \
@@ -95,7 +95,7 @@ LocalException.h: \
Locator.h: \
"$(slicedir)\Ice\Locator.ice" \
"$(slicedir)/Ice/Identity.ice" \
- "$(slicedir)/Ice/ProcessF.ice"
+ "$(slicedir)/Ice/Process.ice"
LocatorF.h: \
"$(slicedir)\Ice\LocatorF.ice"
@@ -128,9 +128,6 @@ ObjectAdapterF.h: \
ObjectFactory.h: \
"$(slicedir)\Ice\ObjectFactory.ice"
-ObjectFactoryF.h: \
- "$(slicedir)\Ice\ObjectFactoryF.ice"
-
Plugin.h: \
"$(slicedir)\Ice\Plugin.ice" \
"$(slicedir)/Ice/LoggerF.ice" \
@@ -206,6 +203,7 @@ Acceptor.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -214,6 +212,7 @@ Acceptor.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -248,7 +247,7 @@ Acceptor.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -283,6 +282,7 @@ ACM.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -291,6 +291,7 @@ ACM.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
"$(includedir)\Ice\ConnectionIF.h" \
@@ -318,7 +319,7 @@ ACM.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -354,6 +355,7 @@ ACM.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -398,6 +400,7 @@ Application.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -406,6 +409,7 @@ Application.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -446,7 +450,7 @@ Application.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -460,6 +464,7 @@ Application.obj: \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -471,7 +476,6 @@ Application.obj: \
"$(includedir)\Ice\RemoteLogger.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Communicator.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
@@ -493,7 +497,6 @@ Application.obj: \
"$(includedir)\Ice\Stream.h" \
"$(includedir)\Ice\ImplicitContext.h" \
"$(includedir)\Ice\Locator.h" \
- "$(includedir)\Ice\ProcessF.h" \
"$(includedir)\Ice\Router.h" \
"$(includedir)\Ice\DispatchInterceptor.h" \
"$(includedir)\Ice\NativePropertiesAdmin.h" \
@@ -533,12 +536,14 @@ AsyncResult.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -557,7 +562,7 @@ AsyncResult.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -615,6 +620,7 @@ AsyncResult.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -659,6 +665,7 @@ BasicStream.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -667,6 +674,7 @@ BasicStream.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -674,7 +682,7 @@ BasicStream.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -738,6 +746,7 @@ BasicStream.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -747,7 +756,6 @@ BasicStream.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"ObjectFactoryManager.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
@@ -787,6 +795,7 @@ BatchRequestQueue.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -795,6 +804,7 @@ BatchRequestQueue.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -802,7 +812,7 @@ BatchRequestQueue.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -858,6 +868,7 @@ BatchRequestQueue.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -881,6 +892,7 @@ Buffer.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -889,6 +901,7 @@ Buffer.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -928,12 +941,14 @@ CollocatedRequestHandler.obj: \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -949,7 +964,7 @@ CollocatedRequestHandler.obj: \
"$(includedir)\Ice\Current.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -1007,6 +1022,7 @@ CollocatedRequestHandler.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
@@ -1055,6 +1071,7 @@ CommunicatorI.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -1063,6 +1080,7 @@ CommunicatorI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -1090,7 +1108,7 @@ CommunicatorI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -1106,6 +1124,7 @@ CommunicatorI.obj: \
"$(includedir)\Ice\Communicator.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -1157,6 +1176,7 @@ CommunicatorI.obj: \
"$(includedir)\Ice\ConnectionAsync.h" \
"AcceptorF.h" \
"EndpointI.h" \
+ "$(includedir)\Ice\Comparable.h" \
"ReferenceFactory.h" \
"Reference.h" \
"BatchRequestQueue.h" \
@@ -1196,6 +1216,7 @@ ConnectionFactory.obj: \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -1204,6 +1225,7 @@ ConnectionFactory.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -1236,7 +1258,7 @@ ConnectionFactory.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -1272,6 +1294,7 @@ ConnectionFactory.obj: \
"RouterInfoF.h" \
"EndpointI.h" \
"$(includedir)\Ice\InstrumentationF.h" \
+ "$(includedir)\Ice\Comparable.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"DefaultsAndOverridesF.h" \
@@ -1292,6 +1315,7 @@ ConnectionFactory.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\LoggerUtil.h" \
@@ -1315,6 +1339,7 @@ ConnectionFactory.obj: \
"BatchRequestQueue.h" \
"SharedContext.h" \
"RouterInfo.h" \
+ "$(includedir)\Ice\Router.h" \
"$(includedir)\Ice\Functional.h" \
"$(includedir)\IceUtil\Functional.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
@@ -1347,6 +1372,7 @@ ConnectionI.obj: \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -1355,6 +1381,7 @@ ConnectionI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -1381,7 +1408,7 @@ ConnectionI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -1436,6 +1463,7 @@ ConnectionI.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\LoggerUtil.h" \
@@ -1494,12 +1522,14 @@ ConnectionRequestHandler.obj: \
"$(includedir)\Ice\EndpointF.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -1522,7 +1552,7 @@ ConnectionRequestHandler.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -1542,6 +1572,7 @@ ConnectionRequestHandler.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -1575,6 +1606,8 @@ ConnectionRequestHandler.obj: \
"ACM.h" \
"$(includedir)\Ice\ACMF.h" \
"RouterInfo.h" \
+ "$(includedir)\Ice\Router.h" \
+ "$(includedir)\Ice\Comparable.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
@@ -1626,12 +1659,14 @@ ConnectRequestHandler.obj: \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
"$(includedir)\Ice\EndpointF.h" \
@@ -1654,7 +1689,7 @@ ConnectRequestHandler.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -1670,6 +1705,7 @@ ConnectRequestHandler.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -1678,6 +1714,8 @@ ConnectRequestHandler.obj: \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"RouterInfo.h" \
+ "$(includedir)\Ice\Router.h" \
+ "$(includedir)\Ice\Comparable.h" \
"ConnectionRequestHandler.h" \
"RequestHandlerFactory.h" \
"Instance.h" \
@@ -1743,6 +1781,7 @@ DefaultsAndOverrides.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -1751,6 +1790,7 @@ DefaultsAndOverrides.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -1785,7 +1825,7 @@ DefaultsAndOverrides.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -1802,6 +1842,7 @@ DefaultsAndOverrides.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -1829,6 +1870,7 @@ DeprecatedStringConverter.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -1837,6 +1879,7 @@ DeprecatedStringConverter.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -1877,7 +1920,7 @@ DeprecatedStringConverter.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -1915,6 +1958,7 @@ DeprecatedStringConverter.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -1942,6 +1986,7 @@ DispatchInterceptor.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -1950,6 +1995,7 @@ DispatchInterceptor.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -1965,7 +2011,7 @@ DispatchInterceptor.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2011,6 +2057,7 @@ EndpointFactory.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2019,6 +2066,7 @@ EndpointFactory.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -2070,7 +2118,7 @@ EndpointFactory.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2097,6 +2145,7 @@ EndpointFactory.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -2127,6 +2176,7 @@ EndpointFactoryManager.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2135,6 +2185,7 @@ EndpointFactoryManager.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -2160,7 +2211,7 @@ EndpointFactoryManager.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2213,6 +2264,7 @@ EndpointFactoryManager.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -2240,6 +2292,7 @@ EndpointI.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2248,6 +2301,7 @@ EndpointI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -2286,6 +2340,7 @@ EventHandler.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2294,6 +2349,7 @@ EventHandler.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -2301,7 +2357,7 @@ EventHandler.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2363,6 +2419,7 @@ EventHandler.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -2380,6 +2437,7 @@ Exception.obj: \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\IceUtil\Shared.h" \
"$(includedir)\IceUtil\Atomic.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
@@ -2390,6 +2448,7 @@ Exception.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -2429,7 +2488,7 @@ Exception.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2442,6 +2501,7 @@ Exception.obj: \
"$(includedir)\Ice\SlicedData.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Stream.h" \
"$(includedir)\IceUtil\StringUtil.h" \
@@ -2460,12 +2520,13 @@ FactoryTable.obj: \
"$(includedir)\IceUtil\Atomic.h" \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\Config.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2474,10 +2535,10 @@ FactoryTable.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
FactoryTableInit.obj: \
FactoryTableInit.cpp \
@@ -2495,12 +2556,13 @@ FactoryTableInit.obj: \
"$(includedir)\IceUtil\Atomic.h" \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\Config.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2509,11 +2571,11 @@ FactoryTableInit.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
GCObject.obj: \
@@ -2538,6 +2600,7 @@ GCObject.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2546,6 +2609,7 @@ GCObject.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -2580,6 +2644,7 @@ HttpParser.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2588,6 +2653,7 @@ HttpParser.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -2595,7 +2661,7 @@ HttpParser.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2621,6 +2687,7 @@ ImplicitContextI.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2629,6 +2696,7 @@ ImplicitContextI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Identity.h" \
@@ -2649,7 +2717,7 @@ ImplicitContextI.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2677,12 +2745,14 @@ Incoming.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -2701,7 +2771,7 @@ Incoming.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2781,6 +2851,7 @@ Incoming.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\LoggerUtil.h" \
@@ -2809,12 +2880,14 @@ IncomingAsync.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -2832,7 +2905,7 @@ IncomingAsync.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2907,6 +2980,7 @@ IncomingAsync.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"ReplyStatus.h" \
@@ -2939,6 +3013,7 @@ Initialize.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -2947,6 +3022,7 @@ Initialize.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -2974,7 +3050,7 @@ Initialize.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -2990,6 +3066,7 @@ Initialize.obj: \
"$(includedir)\Ice\Communicator.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -3060,6 +3137,7 @@ Instance.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3068,6 +3146,7 @@ Instance.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -3103,7 +3182,7 @@ Instance.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -3133,6 +3212,7 @@ Instance.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -3142,19 +3222,18 @@ Instance.obj: \
"Network.h" \
"ProtocolInstanceF.h" \
"RouterInfo.h" \
- "$(includedir)\Ice\RouterF.h" \
- "EndpointIF.h" \
"$(includedir)\Ice\Router.h" \
+ "EndpointIF.h" \
+ "$(includedir)\Ice\Comparable.h" \
"LocatorInfo.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\Locator.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ProcessF.h" \
"ReferenceFactory.h" \
"Reference.h" \
+ "$(includedir)\Ice\RouterF.h" \
"BatchRequestQueue.h" \
"SharedContext.h" \
"$(includedir)\Ice\Properties.h" \
@@ -3228,6 +3307,7 @@ InstrumentationI.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3236,6 +3316,7 @@ InstrumentationI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\EndpointF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -3271,7 +3352,7 @@ InstrumentationI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -3281,13 +3362,13 @@ InstrumentationI.obj: \
"$(includedir)\Ice\Metrics.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\MetricsAdminI.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -3340,6 +3421,7 @@ IPEndpointI.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3348,6 +3430,7 @@ IPEndpointI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -3383,7 +3466,7 @@ IPEndpointI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -3423,6 +3506,7 @@ IPEndpointI.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -3472,6 +3556,7 @@ LocatorInfo.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3480,6 +3565,7 @@ LocatorInfo.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
"$(includedir)\Ice\ConnectionIF.h" \
@@ -3507,7 +3593,7 @@ LocatorInfo.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -3519,6 +3605,7 @@ LocatorInfo.obj: \
"$(includedir)\Ice\Locator.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -3526,8 +3613,7 @@ LocatorInfo.obj: \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ProcessF.h" \
+ "$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"Instance.h" \
@@ -3561,7 +3647,6 @@ LocatorInfo.obj: \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
"$(includedir)\Ice\FacetMap.h" \
- "$(includedir)\Ice\Process.h" \
"TraceLevels.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
@@ -3593,6 +3678,7 @@ LoggerAdminI.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3601,6 +3687,7 @@ LoggerAdminI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -3636,7 +3723,7 @@ LoggerAdminI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -3655,6 +3742,7 @@ LoggerAdminI.obj: \
"$(includedir)\Ice\Communicator.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -3670,7 +3758,6 @@ LoggerAdminI.obj: \
"$(includedir)\Ice\RemoteLogger.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectAdapter.h" \
"$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\Connection.h" \
@@ -3693,6 +3780,7 @@ LoggerI.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3701,6 +3789,7 @@ LoggerI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -3732,6 +3821,7 @@ LoggerUtil.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3740,6 +3830,7 @@ LoggerUtil.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -3793,7 +3884,7 @@ LoggerUtil.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -3819,6 +3910,7 @@ LoggerUtil.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -3839,6 +3931,7 @@ MetricsAdminI.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3847,6 +3940,7 @@ MetricsAdminI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -3881,7 +3975,7 @@ MetricsAdminI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -3890,6 +3984,7 @@ MetricsAdminI.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -3910,7 +4005,6 @@ MetricsAdminI.obj: \
"$(includedir)\Ice\Metrics.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"InstrumentationI.h" \
"$(includedir)\Ice\MetricsObserverI.h" \
"..\..\src\IceUtil\StopWatch.h" \
@@ -3966,6 +4060,7 @@ MetricsObserverI.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -3974,6 +4069,7 @@ MetricsObserverI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\EndpointF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -4009,7 +4105,7 @@ MetricsObserverI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4019,13 +4115,13 @@ MetricsObserverI.obj: \
"$(includedir)\Ice\Metrics.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\MetricsAdminI.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -4060,6 +4156,7 @@ Network.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -4068,6 +4165,7 @@ Network.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -4102,7 +4200,7 @@ Network.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4150,6 +4248,7 @@ Network.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -4179,6 +4278,7 @@ NetworkProxy.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -4187,6 +4287,7 @@ NetworkProxy.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -4221,7 +4322,7 @@ NetworkProxy.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4236,6 +4337,7 @@ NetworkProxy.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -4264,6 +4366,7 @@ Object.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -4272,6 +4375,7 @@ Object.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -4286,7 +4390,7 @@ Object.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4317,6 +4421,7 @@ Object.obj: \
"$(includedir)\Ice\SlicedData.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
ObjectAdapterFactory.obj: \
ObjectAdapterFactory.cpp \
@@ -4341,6 +4446,7 @@ ObjectAdapterFactory.obj: \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -4349,6 +4455,7 @@ ObjectAdapterFactory.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
@@ -4377,7 +4484,7 @@ ObjectAdapterFactory.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4432,6 +4539,7 @@ ObjectAdapterI.obj: \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -4440,6 +4548,7 @@ ObjectAdapterI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
@@ -4468,7 +4577,7 @@ ObjectAdapterI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4518,6 +4627,7 @@ ObjectAdapterI.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"ProxyFactory.h" \
@@ -4545,16 +4655,16 @@ ObjectAdapterI.obj: \
"RequestHandler.h" \
"ResponseHandler.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
+ "$(includedir)\Ice\Comparable.h" \
"ServantManager.h" \
"RouterInfo.h" \
+ "$(includedir)\Ice\Router.h" \
"$(includedir)\Ice\Functional.h" \
"$(includedir)\IceUtil\Functional.h" \
"LocatorInfo.h" \
"$(includedir)\Ice\Locator.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ProcessF.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"ThreadPool.h" \
@@ -4562,7 +4672,6 @@ ObjectAdapterI.obj: \
"$(includedir)\IceUtil\StringUtil.h" \
"$(includedir)\Ice\Communicator.h" \
"$(includedir)\Ice\ImplicitContextF.h" \
- "$(includedir)\Ice\Router.h" \
"DefaultsAndOverrides.h" \
"TraceLevels.h" \
"PropertyNames.h" \
@@ -4583,11 +4692,12 @@ ObjectFactoryManager.obj: \
"$(includedir)\Ice\Handle.h" \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\Config.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -4596,10 +4706,10 @@ ObjectFactoryManager.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Functional.h" \
"$(includedir)\IceUtil\Functional.h" \
"$(includedir)\Ice\LocalException.h" \
@@ -4622,6 +4732,7 @@ ObserverHelper.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -4630,6 +4741,7 @@ ObserverHelper.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\EndpointF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -4666,7 +4778,7 @@ ObserverHelper.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4682,6 +4794,7 @@ ObserverHelper.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -4738,6 +4851,7 @@ OpaqueEndpointI.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -4746,6 +4860,7 @@ OpaqueEndpointI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -4776,7 +4891,7 @@ OpaqueEndpointI.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4839,12 +4954,14 @@ Outgoing.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -4852,7 +4969,7 @@ Outgoing.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -4913,6 +5030,7 @@ Outgoing.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -4964,12 +5082,14 @@ OutgoingAsync.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -4988,7 +5108,7 @@ OutgoingAsync.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5042,6 +5162,7 @@ OutgoingAsync.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -5089,6 +5210,7 @@ PluginManagerI.obj: \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -5097,6 +5219,7 @@ PluginManagerI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -5132,7 +5255,7 @@ PluginManagerI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5141,6 +5264,7 @@ PluginManagerI.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5205,6 +5329,7 @@ PropertiesAdminI.obj: \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -5213,6 +5338,7 @@ PropertiesAdminI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
@@ -5243,7 +5369,7 @@ PropertiesAdminI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5252,6 +5378,7 @@ PropertiesAdminI.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5285,6 +5412,7 @@ PropertiesI.obj: \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -5293,6 +5421,7 @@ PropertiesI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
"$(includedir)\Ice\ConnectionIF.h" \
@@ -5322,7 +5451,7 @@ PropertiesI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5331,6 +5460,7 @@ PropertiesI.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5381,6 +5511,7 @@ Protocol.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -5389,6 +5520,7 @@ Protocol.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -5412,6 +5544,7 @@ ProtocolInstance.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -5420,6 +5553,7 @@ ProtocolInstance.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -5454,7 +5588,7 @@ ProtocolInstance.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5500,6 +5634,7 @@ ProtocolInstance.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5528,6 +5663,7 @@ ProtocolPluginFacade.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -5536,6 +5672,7 @@ ProtocolPluginFacade.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -5587,7 +5724,7 @@ ProtocolPluginFacade.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5616,6 +5753,7 @@ ProtocolPluginFacade.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5651,12 +5789,14 @@ Proxy.obj: \
"$(includedir)\Ice\EndpointF.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -5681,7 +5821,7 @@ Proxy.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5693,6 +5833,7 @@ Proxy.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5752,6 +5893,8 @@ Proxy.obj: \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Process.h" \
"RouterInfo.h" \
+ "$(includedir)\Ice\Router.h" \
+ "$(includedir)\Ice\Comparable.h" \
"LocatorInfo.h" \
"ConnectionI.h" \
"..\..\src\IceUtil\StopWatch.h" \
@@ -5788,6 +5931,7 @@ ProxyFactory.obj: \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\OutgoingAsyncF.h" \
"$(includedir)\Ice\Properties.h" \
@@ -5797,6 +5941,7 @@ ProxyFactory.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\Ice\ConnectionIF.h" \
"$(includedir)\Ice\RequestHandlerF.h" \
@@ -5823,7 +5968,7 @@ ProxyFactory.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5832,6 +5977,7 @@ ProxyFactory.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5882,6 +6028,8 @@ ProxyFactory.obj: \
"SharedContext.h" \
"LocatorInfo.h" \
"RouterInfo.h" \
+ "$(includedir)\Ice\Router.h" \
+ "$(includedir)\Ice\Comparable.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"TraceLevels.h" \
@@ -5906,6 +6054,7 @@ Reference.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -5914,6 +6063,7 @@ Reference.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -5946,7 +6096,7 @@ Reference.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -5962,6 +6112,7 @@ Reference.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -6011,12 +6162,11 @@ Reference.obj: \
"ProtocolInstanceF.h" \
"RouterInfo.h" \
"$(includedir)\Ice\Router.h" \
+ "$(includedir)\Ice\Comparable.h" \
"LocatorInfo.h" \
"$(includedir)\Ice\Locator.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ProcessF.h" \
"$(includedir)\Ice\Functional.h" \
"$(includedir)\IceUtil\Functional.h" \
"ConnectionI.h" \
@@ -6054,6 +6204,7 @@ ReferenceFactory.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -6062,6 +6213,7 @@ ReferenceFactory.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -6096,7 +6248,7 @@ ReferenceFactory.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -6105,6 +6257,7 @@ ReferenceFactory.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -6175,12 +6328,11 @@ ReferenceFactory.obj: \
"EndpointFactoryF.h" \
"RouterInfo.h" \
"$(includedir)\Ice\Router.h" \
+ "$(includedir)\Ice\Comparable.h" \
"LocatorInfo.h" \
"$(includedir)\Ice\Locator.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ProcessF.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"DefaultsAndOverrides.h" \
@@ -6202,6 +6354,7 @@ RegisterPluginsInit.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -6210,6 +6363,7 @@ RegisterPluginsInit.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -6247,7 +6401,7 @@ RegisterPluginsInit.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -6287,12 +6441,14 @@ RequestHandler.obj: \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -6322,7 +6478,7 @@ RequestHandler.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -6338,6 +6494,7 @@ RequestHandler.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -6380,12 +6537,14 @@ RequestHandlerFactory.obj: \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -6400,7 +6559,7 @@ RequestHandlerFactory.obj: \
"$(includedir)\Ice\Current.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -6433,12 +6592,15 @@ RequestHandlerFactory.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"RouterInfo.h" \
+ "$(includedir)\Ice\Router.h" \
+ "$(includedir)\Ice\Comparable.h" \
"ObjectAdapterFactory.h" \
"ObjectAdapterI.h" \
"$(includedir)\IceUtil\RecMutex.h" \
@@ -6486,6 +6648,7 @@ ResponseHandler.obj: \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -6494,6 +6657,7 @@ ResponseHandler.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -6538,12 +6702,14 @@ RetryQueue.obj: \
"$(includedir)\Ice\CommunicatorF.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -6560,7 +6726,7 @@ RetryQueue.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -6606,6 +6772,7 @@ RetryQueue.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -6630,11 +6797,12 @@ RouterInfo.obj: \
"$(includedir)\Ice\Handle.h" \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\Config.h" \
- "$(includedir)\Ice\RouterF.h" \
+ "$(includedir)\Ice\Router.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -6643,6 +6811,7 @@ RouterInfo.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
"$(includedir)\Ice\ConnectionIF.h" \
@@ -6672,22 +6841,23 @@ RouterInfo.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "EndpointIF.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
- "$(includedir)\Ice\Router.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
+ "EndpointIF.h" \
+ "$(includedir)\Ice\Comparable.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
@@ -6695,6 +6865,7 @@ RouterInfo.obj: \
"$(includedir)\IceUtil\Functional.h" \
"Reference.h" \
"ReferenceFactoryF.h" \
+ "$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"LocatorInfoF.h" \
"BatchRequestQueue.h" \
@@ -6730,6 +6901,7 @@ Selector.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -6738,6 +6910,7 @@ Selector.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\Ice\ProxyFactoryF.h" \
"$(includedir)\Ice\ConnectionIF.h" \
@@ -6765,7 +6938,7 @@ Selector.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -6810,6 +6983,7 @@ Selector.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -6839,6 +7013,7 @@ ServantManager.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -6847,6 +7022,7 @@ ServantManager.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -6898,7 +7074,7 @@ ServantManager.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -6923,6 +7099,7 @@ ServantManager.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\IceUtil\StringUtil.h" \
@@ -6957,6 +7134,7 @@ Service.obj: \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -6965,6 +7143,7 @@ Service.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -6996,7 +7175,7 @@ Service.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7010,6 +7189,7 @@ Service.obj: \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -7021,7 +7201,6 @@ Service.obj: \
"$(includedir)\Ice\RemoteLogger.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Communicator.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
@@ -7044,7 +7223,6 @@ Service.obj: \
"$(includedir)\Ice\Stream.h" \
"$(includedir)\Ice\ImplicitContext.h" \
"$(includedir)\Ice\Locator.h" \
- "$(includedir)\Ice\ProcessF.h" \
"$(includedir)\Ice\Router.h" \
"$(includedir)\Ice\DispatchInterceptor.h" \
"$(includedir)\Ice\NativePropertiesAdmin.h" \
@@ -7089,6 +7267,7 @@ SliceChecksums.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -7097,6 +7276,7 @@ SliceChecksums.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -7131,6 +7311,7 @@ SlicedData.obj: \
"$(includedir)\Ice\IncomingAsyncF.h" \
"$(includedir)\Ice\Current.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -7139,6 +7320,7 @@ SlicedData.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -7147,10 +7329,11 @@ SlicedData.obj: \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\InstanceF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7173,6 +7356,7 @@ Stream.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\LocalObject.h" \
@@ -7180,6 +7364,7 @@ Stream.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -7213,7 +7398,7 @@ Stream.obj: \
"$(includedir)\Ice\Instrumentation.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7238,6 +7423,7 @@ StreamI.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\LocalObject.h" \
@@ -7245,6 +7431,7 @@ StreamI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -7278,7 +7465,7 @@ StreamI.obj: \
"$(includedir)\Ice\Instrumentation.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7323,6 +7510,7 @@ StreamI.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -7349,6 +7537,7 @@ StreamSocket.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -7357,6 +7546,7 @@ StreamSocket.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -7391,7 +7581,7 @@ StreamSocket.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7438,6 +7628,7 @@ StreamSocket.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -7459,6 +7650,7 @@ StringConverterPlugin.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -7467,6 +7659,7 @@ StringConverterPlugin.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -7513,7 +7706,7 @@ StringConverterPlugin.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7521,6 +7714,7 @@ StringConverterPlugin.obj: \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -7565,6 +7759,7 @@ TcpAcceptor.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -7573,6 +7768,7 @@ TcpAcceptor.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -7607,7 +7803,7 @@ TcpAcceptor.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7655,6 +7851,7 @@ TcpAcceptor.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -7695,6 +7892,7 @@ TcpConnector.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -7703,6 +7901,7 @@ TcpConnector.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -7737,7 +7936,7 @@ TcpConnector.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7785,6 +7984,7 @@ TcpConnector.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -7828,6 +8028,7 @@ TcpEndpointI.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -7836,6 +8037,7 @@ TcpEndpointI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -7871,7 +8073,7 @@ TcpEndpointI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -7914,6 +8116,7 @@ TcpEndpointI.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -7947,6 +8150,7 @@ TcpTransceiver.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -7955,6 +8159,7 @@ TcpTransceiver.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -7993,7 +8198,7 @@ TcpTransceiver.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8039,6 +8244,7 @@ TcpTransceiver.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -8071,6 +8277,7 @@ ThreadPool.obj: \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8079,6 +8286,7 @@ ThreadPool.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -8108,7 +8316,7 @@ ThreadPool.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8154,6 +8362,7 @@ ThreadPool.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -8187,6 +8396,7 @@ TraceLevels.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8195,6 +8405,7 @@ TraceLevels.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -8229,7 +8440,7 @@ TraceLevels.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8239,6 +8450,7 @@ TraceLevels.obj: \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -8269,6 +8481,7 @@ TraceUtil.obj: \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8277,6 +8490,7 @@ TraceUtil.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -8321,7 +8535,7 @@ TraceUtil.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8349,6 +8563,7 @@ TraceUtil.obj: \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -8373,6 +8588,7 @@ Transceiver.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8381,6 +8597,7 @@ Transceiver.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -8419,7 +8636,7 @@ Transceiver.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8451,6 +8668,7 @@ UdpConnector.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8459,6 +8677,7 @@ UdpConnector.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -8493,7 +8712,7 @@ UdpConnector.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8537,6 +8756,7 @@ UdpConnector.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -8577,6 +8797,7 @@ UdpEndpointI.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8585,6 +8806,7 @@ UdpEndpointI.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -8620,7 +8842,7 @@ UdpEndpointI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8666,6 +8888,7 @@ UdpEndpointI.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -8696,6 +8919,7 @@ UdpTransceiver.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8704,6 +8928,7 @@ UdpTransceiver.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -8737,7 +8962,7 @@ UdpTransceiver.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8787,6 +9012,7 @@ UdpTransceiver.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -8813,6 +9039,7 @@ WSAcceptor.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8821,6 +9048,7 @@ WSAcceptor.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -8863,7 +9091,7 @@ WSAcceptor.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -8907,6 +9135,7 @@ WSAcceptor.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -8934,6 +9163,7 @@ WSConnector.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -8942,6 +9172,7 @@ WSConnector.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -8982,7 +9213,7 @@ WSConnector.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9026,6 +9257,7 @@ WSConnector.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -9057,6 +9289,7 @@ WSEndpoint.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9065,6 +9298,7 @@ WSEndpoint.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -9111,7 +9345,7 @@ WSEndpoint.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9150,6 +9384,7 @@ WSEndpoint.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -9180,6 +9415,7 @@ WSTransceiver.obj: \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
"$(includedir)\Ice\ObjectF.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9188,6 +9424,7 @@ WSTransceiver.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -9222,7 +9459,7 @@ WSTransceiver.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9268,6 +9505,7 @@ WSTransceiver.obj: \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -9305,6 +9543,7 @@ DLLMain.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9313,6 +9552,7 @@ DLLMain.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Identity.h" \
@@ -9358,7 +9598,7 @@ DLLMain.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9371,6 +9611,7 @@ DLLMain.obj: \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -9382,7 +9623,6 @@ DLLMain.obj: \
"$(includedir)\Ice\RemoteLogger.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Communicator.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
@@ -9404,7 +9644,6 @@ DLLMain.obj: \
"$(includedir)\IceUtil\Functional.h" \
"$(includedir)\Ice\Stream.h" \
"$(includedir)\Ice\Locator.h" \
- "$(includedir)\Ice\ProcessF.h" \
"$(includedir)\Ice\Router.h" \
"$(includedir)\Ice\DispatchInterceptor.h" \
"$(includedir)\Ice\NativePropertiesAdmin.h" \
@@ -9427,6 +9666,7 @@ BuiltinSequences.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9435,6 +9675,7 @@ BuiltinSequences.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -9453,7 +9694,7 @@ BuiltinSequences.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9475,6 +9716,7 @@ Communicator.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9483,6 +9725,7 @@ Communicator.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -9517,7 +9760,7 @@ Communicator.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9526,6 +9769,7 @@ Communicator.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -9542,7 +9786,6 @@ Communicator.obj: \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -9563,6 +9806,7 @@ CommunicatorF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9571,6 +9815,7 @@ CommunicatorF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -9589,6 +9834,7 @@ Connection.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9597,6 +9843,7 @@ Connection.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -9631,7 +9878,7 @@ Connection.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9659,6 +9906,7 @@ ConnectionF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9667,6 +9915,7 @@ ConnectionF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -9685,6 +9934,7 @@ Current.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9693,6 +9943,7 @@ Current.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -9710,7 +9961,7 @@ Current.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9732,6 +9983,7 @@ Endpoint.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9740,6 +9992,7 @@ Endpoint.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Version.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -9760,7 +10013,7 @@ Endpoint.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9782,6 +10035,7 @@ EndpointF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9790,6 +10044,7 @@ EndpointF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -9808,6 +10063,7 @@ EndpointTypes.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9816,31 +10072,10 @@ EndpointTypes.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
- "$(includedir)\Ice\BasicStream.h" \
- "$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\InstanceF.h" \
- "$(includedir)\Ice\Object.h" \
- "$(includedir)\IceUtil\Mutex.h" \
- "$(includedir)\IceUtil\Lock.h" \
- "$(includedir)\IceUtil\ThreadException.h" \
- "$(includedir)\IceUtil\Time.h" \
- "$(includedir)\IceUtil\MutexProtocol.h" \
- "$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\Current.h" \
- "$(includedir)\Ice\ObjectAdapterF.h" \
- "$(includedir)\Ice\ConnectionF.h" \
- "$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
- "$(includedir)\Ice\Buffer.h" \
- "$(includedir)\Ice\Protocol.h" \
- "$(includedir)\Ice\SlicedDataF.h" \
- "$(includedir)\Ice\UserExceptionFactory.h" \
- "$(includedir)\Ice\FactoryTable.h" \
FacetMap.obj: \
FacetMap.cpp \
@@ -9856,6 +10091,7 @@ FacetMap.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9864,6 +10100,7 @@ FacetMap.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -9882,7 +10119,7 @@ FacetMap.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9904,6 +10141,7 @@ Identity.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9912,6 +10150,7 @@ Identity.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -9929,7 +10168,7 @@ Identity.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -9951,6 +10190,7 @@ ImplicitContext.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -9959,6 +10199,7 @@ ImplicitContext.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Identity.h" \
@@ -9979,7 +10220,7 @@ ImplicitContext.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10001,6 +10242,7 @@ ImplicitContextF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10009,6 +10251,7 @@ ImplicitContextF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -10027,6 +10270,7 @@ Instrumentation.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10035,6 +10279,7 @@ Instrumentation.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\EndpointF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -10054,7 +10299,7 @@ Instrumentation.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10076,6 +10321,7 @@ InstrumentationF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10084,6 +10330,7 @@ InstrumentationF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -10102,6 +10349,7 @@ LocalException.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10110,6 +10358,7 @@ LocalException.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -10129,7 +10378,7 @@ LocalException.obj: \
"$(includedir)\Ice\Current.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10151,6 +10400,7 @@ Locator.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10159,6 +10409,7 @@ Locator.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -10193,7 +10444,7 @@ Locator.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10202,6 +10453,7 @@ Locator.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -10209,8 +10461,7 @@ Locator.obj: \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ProcessF.h" \
+ "$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Outgoing.h" \
@@ -10233,6 +10484,7 @@ LocatorF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10241,6 +10493,7 @@ LocatorF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -10275,7 +10528,7 @@ LocatorF.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10297,6 +10550,7 @@ Logger.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10305,6 +10559,7 @@ Logger.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -10323,6 +10578,7 @@ LoggerF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10331,6 +10587,7 @@ LoggerF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -10349,6 +10606,7 @@ Metrics.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10357,6 +10615,7 @@ Metrics.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -10391,7 +10650,7 @@ Metrics.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10400,13 +10659,13 @@ Metrics.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Outgoing.h" \
@@ -10429,6 +10688,7 @@ ObjectAdapter.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10437,6 +10697,7 @@ ObjectAdapter.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -10471,7 +10732,7 @@ ObjectAdapter.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10498,6 +10759,7 @@ ObjectAdapterF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10506,6 +10768,7 @@ ObjectAdapterF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -10524,6 +10787,7 @@ ObjectFactory.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10532,6 +10796,7 @@ ObjectFactory.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -10550,7 +10815,6 @@ ObjectFactory.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10558,32 +10822,6 @@ ObjectFactory.obj: \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
-ObjectFactoryF.obj: \
- ObjectFactoryF.cpp \
- "$(includedir)\Ice\ObjectFactoryF.h" \
- "$(includedir)\IceUtil\PushDisableWarnings.h" \
- "$(includedir)\Ice\ProxyF.h" \
- "$(includedir)\IceUtil\Shared.h" \
- "$(includedir)\IceUtil\Config.h" \
- "$(includedir)\IceUtil\Atomic.h" \
- "$(includedir)\Ice\Config.h" \
- "$(includedir)\Ice\ProxyHandle.h" \
- "$(includedir)\IceUtil\Handle.h" \
- "$(includedir)\IceUtil\Exception.h" \
- "$(includedir)\Ice\ObjectF.h" \
- "$(includedir)\Ice\Handle.h" \
- "$(includedir)\Ice\Exception.h" \
- "$(includedir)\Ice\Format.h" \
- "$(includedir)\Ice\StreamF.h" \
- "$(includedir)\Ice\LocalObject.h" \
- "$(includedir)\Ice\LocalObjectF.h" \
- "$(includedir)\Ice\StreamHelpers.h" \
- "$(includedir)\IceUtil\ScopedArray.h" \
- "$(includedir)\IceUtil\Iterator.h" \
- "$(includedir)\IceUtil\Optional.h" \
- "$(includedir)\IceUtil\UndefSysMacros.h" \
- "$(includedir)\IceUtil\PopDisableWarnings.h" \
-
Plugin.obj: \
Plugin.cpp \
"$(includedir)\Ice\Plugin.h" \
@@ -10598,6 +10836,7 @@ Plugin.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10606,6 +10845,7 @@ Plugin.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -10626,7 +10866,7 @@ Plugin.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10648,6 +10888,7 @@ PluginF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10656,6 +10897,7 @@ PluginF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -10674,6 +10916,7 @@ Process.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10682,6 +10925,7 @@ Process.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -10716,7 +10960,7 @@ Process.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10725,13 +10969,13 @@ Process.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -10752,6 +10996,7 @@ ProcessF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10760,6 +11005,7 @@ ProcessF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -10794,7 +11040,7 @@ ProcessF.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10816,6 +11062,7 @@ Properties.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10824,6 +11071,7 @@ Properties.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -10858,7 +11106,7 @@ Properties.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10867,6 +11115,7 @@ Properties.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -10875,7 +11124,6 @@ Properties.obj: \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -10896,6 +11144,7 @@ PropertiesAdmin.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10904,6 +11153,7 @@ PropertiesAdmin.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -10938,7 +11188,7 @@ PropertiesAdmin.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -10947,6 +11197,7 @@ PropertiesAdmin.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -10954,7 +11205,6 @@ PropertiesAdmin.obj: \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -10975,6 +11225,7 @@ PropertiesF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -10983,6 +11234,7 @@ PropertiesF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -11017,7 +11269,7 @@ PropertiesF.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -11039,6 +11291,7 @@ RemoteLogger.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -11047,6 +11300,7 @@ RemoteLogger.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -11081,7 +11335,7 @@ RemoteLogger.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -11090,13 +11344,13 @@ RemoteLogger.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
"$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Outgoing.h" \
@@ -11119,6 +11373,7 @@ Router.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -11127,6 +11382,7 @@ Router.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -11161,7 +11417,7 @@ Router.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -11170,13 +11426,13 @@ Router.obj: \
"$(includedir)\Ice\FactoryTable.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
+ "$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -11197,6 +11453,7 @@ RouterF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -11205,6 +11462,7 @@ RouterF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\Ice\Proxy.h" \
"$(includedir)\IceUtil\Mutex.h" \
"$(includedir)\IceUtil\Lock.h" \
@@ -11239,7 +11497,7 @@ RouterF.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -11261,6 +11519,7 @@ ServantLocator.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -11269,6 +11528,7 @@ ServantLocator.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
@@ -11287,7 +11547,7 @@ ServantLocator.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -11309,6 +11569,7 @@ ServantLocatorF.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -11317,6 +11578,7 @@ ServantLocatorF.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -11335,6 +11597,7 @@ SliceChecksumDict.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -11343,6 +11606,7 @@ SliceChecksumDict.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -11361,7 +11625,7 @@ SliceChecksumDict.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
@@ -11383,6 +11647,7 @@ Version.obj: \
"$(includedir)\IceUtil\Exception.h" \
"$(includedir)\Ice\ObjectF.h" \
"$(includedir)\Ice\Handle.h" \
+ "$(includedir)\Ice\ValueF.h" \
"$(includedir)\Ice\Exception.h" \
"$(includedir)\Ice\Format.h" \
"$(includedir)\Ice\StreamF.h" \
@@ -11391,6 +11656,7 @@ Version.obj: \
"$(includedir)\Ice\StreamHelpers.h" \
"$(includedir)\IceUtil\ScopedArray.h" \
"$(includedir)\IceUtil\Iterator.h" \
+ "$(includedir)\Ice\Traits.h" \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
@@ -11408,7 +11674,7 @@ Version.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\ObjectFactoryF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ObjectFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
diff --git a/cpp/src/Ice/ACM.cpp b/cpp/src/Ice/ACM.cpp
index c7cd625b253..79a9785d5e0 100644
--- a/cpp/src/Ice/ACM.cpp
+++ b/cpp/src/Ice/ACM.cpp
@@ -18,8 +18,10 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(ACMMonitor* p) { return p; }
IceUtil::Shared* IceInternal::upCast(FactoryACMMonitor* p) { return p; }
+#endif
IceInternal::ACMConfig::ACMConfig(bool server) :
timeout(IceUtil::Time::seconds(60)),
@@ -107,7 +109,7 @@ IceInternal::FactoryACMMonitor::add(const ConnectionIPtr& connection)
if(_connections.empty())
{
_connections.insert(connection);
- _instance->timer()->scheduleRepeated(this, _config.timeout / 2);
+ _instance->timer()->scheduleRepeated(ICE_SHARED_FROM_THIS, _config.timeout / 2);
}
else
{
@@ -156,7 +158,7 @@ IceInternal::FactoryACMMonitor::acm(const IceUtil::Optional<int>& timeout,
{
config.heartbeat = *heartbeat;
}
- return new ConnectionACMMonitor(this, _instance->timer(), config);
+ return ICE_MAKE_SHARED(ConnectionACMMonitor, ICE_SHARED_FROM_THIS, _instance->timer(), config);
}
Ice::ACM
@@ -201,7 +203,7 @@ IceInternal::FactoryACMMonitor::runTimerTask()
if(_connections.empty())
{
- _instance->timer()->cancel(this);
+ _instance->timer()->cancel(ICE_SHARED_FROM_THIS);
return;
}
}
@@ -275,7 +277,7 @@ IceInternal::ConnectionACMMonitor::add(const ConnectionIPtr& connection)
_connection = connection;
if(_config.timeout != IceUtil::Time())
{
- _timer->scheduleRepeated(this, _config.timeout / 2);
+ _timer->scheduleRepeated(ICE_SHARED_FROM_THIS, _config.timeout / 2);
}
}
@@ -286,7 +288,7 @@ IceInternal::ConnectionACMMonitor::remove(const ConnectionIPtr& connection)
assert(_connection == connection);
if(_config.timeout != IceUtil::Time())
{
- _timer->cancel(this);
+ _timer->cancel(ICE_SHARED_FROM_THIS);
}
_connection = 0;
}
diff --git a/cpp/src/Ice/ACM.h b/cpp/src/Ice/ACM.h
index c791708a202..9d8f151daac 100644
--- a/cpp/src/Ice/ACM.h
+++ b/cpp/src/Ice/ACM.h
@@ -50,7 +50,8 @@ public:
virtual Ice::ACM getACM() = 0;
};
-class FactoryACMMonitor : public ACMMonitor, public ::IceUtil::Mutex
+class FactoryACMMonitor : public ACMMonitor, public ::IceUtil::Mutex,
+ public ICE_ENABLE_SHARED_FROM_THIS(FactoryACMMonitor)
{
public:
@@ -85,7 +86,8 @@ private:
std::vector<Ice::ConnectionIPtr> _reapedConnections;
};
-class ConnectionACMMonitor : public ACMMonitor, public ::IceUtil::Mutex
+class ConnectionACMMonitor : public ACMMonitor, public ::IceUtil::Mutex,
+ public ICE_ENABLE_SHARED_FROM_THIS(ConnectionACMMonitor)
{
public:
diff --git a/cpp/src/Ice/Application.cpp b/cpp/src/Ice/Application.cpp
index 3c30bdc7301..59a0c8d4551 100644
--- a/cpp/src/Ice/Application.cpp
+++ b/cpp/src/Ice/Application.cpp
@@ -312,9 +312,9 @@ Ice::Application::main(int argc, char* argv[], const char* configFile)
IceInternal::Application::_appName = argv[0];
}
- if(argc > 0 && argv[0] && LoggerIPtr::dynamicCast(getProcessLogger()))
+ if(argc > 0 && argv[0] && ICE_DYNAMIC_CAST(LoggerI, getProcessLogger()))
{
- setProcessLogger(new LoggerI(argv[0], "", true, IceUtil::getProcessStringConverter()));
+ setProcessLogger(ICE_MAKE_SHARED(LoggerI, argv[0], "", true, IceUtil::getProcessStringConverter()));
}
InitializationData initData;
@@ -364,12 +364,12 @@ Ice::Application::main(int argc, wchar_t* argv[], const Ice::InitializationData&
int
Ice::Application::main(int argc, char* argv[], const InitializationData& initializationData)
{
- if(argc > 0 && argv[0] && LoggerIPtr::dynamicCast(getProcessLogger()))
+ if(argc > 0 && argv[0] && ICE_DYNAMIC_CAST(LoggerI, getProcessLogger()))
{
const bool convert = initializationData.properties ?
initializationData.properties->getPropertyAsIntWithDefault("Ice.LogStdErr.Convert", 1) > 0 &&
initializationData.properties->getProperty("Ice.StdErr").empty() : true;
- setProcessLogger(new LoggerI(argv[0], "", convert, IceUtil::getProcessStringConverter()));
+ setProcessLogger(ICE_MAKE_SHARED(LoggerI, argv[0], "", convert, IceUtil::getProcessStringConverter()));
}
if(IceInternal::Application::_communicator != 0)
@@ -655,13 +655,13 @@ Ice::Application::doMain(int argc, char* argv[], const InitializationData& initD
// If the process logger is the default logger, we now replace it with a
// a logger which is using the program name for the prefix.
//
- if(initData.properties->getProperty("Ice.ProgramName") != "" && LoggerIPtr::dynamicCast(getProcessLogger()))
+ if(initData.properties->getProperty("Ice.ProgramName") != "" && ICE_DYNAMIC_CAST(LoggerI, getProcessLogger()))
{
const bool convert =
initData.properties->getPropertyAsIntWithDefault("Ice.LogStdErr.Convert", 1) > 0 &&
initData.properties->getProperty("Ice.StdErr").empty();
- setProcessLogger(new LoggerI(initData.properties->getProperty("Ice.ProgramName"), "", convert,
+ setProcessLogger(ICE_MAKE_SHARED(LoggerI, initData.properties->getProperty("Ice.ProgramName"), "", convert,
IceUtil::getProcessStringConverter()));
}
diff --git a/cpp/src/Ice/AsyncResult.cpp b/cpp/src/Ice/AsyncResult.cpp
index 71d8106bd79..69ba7d0b5ab 100644
--- a/cpp/src/Ice/AsyncResult.cpp
+++ b/cpp/src/Ice/AsyncResult.cpp
@@ -20,7 +20,9 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* Ice::upCast(AsyncResult* p) { return p; }
+#endif
const unsigned char Ice::AsyncResult::OK = 0x1;
const unsigned char Ice::AsyncResult::Done = 0x2;
@@ -51,10 +53,10 @@ AsyncResult::getConnection() const
return 0;
}
-ObjectPrx
+ObjectPrxPtr
AsyncResult::getProxy() const
{
- return 0;
+ return ICE_NULLPTR;
}
bool
@@ -107,11 +109,13 @@ AsyncResult::sentSynchronously() const
return _sentSynchronously;
}
+#ifndef ICE_CPP11_MAPPING
LocalObjectPtr
AsyncResult::getCookie() const
{
return _cookie;
}
+#endif
const std::string&
AsyncResult::getOperation() const
@@ -204,6 +208,25 @@ AsyncResult::__check(const AsyncResultPtr& r, const string& operation)
}
}
+#ifdef ICE_CPP11_MAPPING
+AsyncResult::AsyncResult(const CommunicatorPtr& communicator,
+ const IceInternal::InstancePtr& instance,
+ const string& op,
+ const CallbackBasePtr& callback) :
+ _instance(instance),
+ _sentSynchronously(false),
+ _is(instance.get(), Ice::currentProtocolEncoding),
+ _communicator(communicator),
+ _operation(op),
+ _callback(callback),
+ _state(0)
+{
+ if(!_callback)
+ {
+ throw IceUtil::IllegalArgumentException(__FILE__, __LINE__);
+ }
+}
+#else
AsyncResult::AsyncResult(const CommunicatorPtr& communicator,
const IceInternal::InstancePtr& instance,
const string& op,
@@ -224,6 +247,7 @@ AsyncResult::AsyncResult(const CommunicatorPtr& communicator,
}
const_cast<CallbackBasePtr&>(_callback) = _callback->verify(_cookie);
}
+#endif
AsyncResult::~AsyncResult()
{
@@ -266,7 +290,7 @@ AsyncResult::finished(bool ok)
_observer.detach();
}
_monitor.notifyAll();
- return _callback;
+ return _callback != ICE_NULLPTR;
}
bool
@@ -282,7 +306,7 @@ AsyncResult::finished(const Ice::Exception& ex)
_observer.detach();
}
_monitor.notifyAll();
- return _callback;
+ return _callback != ICE_NULLPTR;
}
void
@@ -315,7 +339,7 @@ AsyncResult::invokeSentAsync()
//
try
{
- _instance->clientThreadPool()->dispatch(new AsynchronousSent(_cachedConnection, this));
+ _instance->clientThreadPool()->dispatch(new AsynchronousSent(_cachedConnection, ICE_SHARED_FROM_THIS));
}
catch(const Ice::CommunicatorDestroyedException&)
{
@@ -349,7 +373,7 @@ AsyncResult::invokeCompletedAsync()
// CommunicatorDestroyedCompleted is the only exception that can propagate directly
// from this method.
//
- _instance->clientThreadPool()->dispatch(new AsynchronousCompleted(_cachedConnection, this));
+ _instance->clientThreadPool()->dispatch(new AsynchronousCompleted(_cachedConnection, ICE_SHARED_FROM_THIS));
}
void
@@ -359,7 +383,7 @@ AsyncResult::invokeSent()
try
{
- AsyncResultPtr self(this);
+ AsyncResultPtr self(ICE_SHARED_FROM_THIS);
_callback->sent(self);
}
catch(const std::exception& ex)
@@ -373,7 +397,7 @@ AsyncResult::invokeSent()
if(_observer)
{
- ObjectPrx proxy = getProxy();
+ ObjectPrxPtr proxy = getProxy();
if(!proxy || !proxy->ice_isTwoway())
{
_observer.detach();
@@ -388,7 +412,7 @@ AsyncResult::invokeCompleted()
try
{
- AsyncResultPtr self(this);
+ AsyncResultPtr self(ICE_SHARED_FROM_THIS);
_callback->completed(self);
}
catch(const std::exception& ex)
@@ -416,7 +440,11 @@ AsyncResult::cancel(const Ice::LocalException& ex)
}
handler = _cancellationHandler;
}
+#ifdef ICE_CPP11_MAPPING
+ handler->asyncRequestCanceled(dynamic_pointer_cast<OutgoingAsyncBase>(shared_from_this()), ex);
+#else
handler->asyncRequestCanceled(OutgoingAsyncBasePtr::dynamicCast(this), ex);
+#endif
}
void
@@ -526,9 +554,10 @@ public:
// versus the generated inline version of the begin_ method having
// passed a pointer to the dummy delegate.
//
-CallbackBasePtr IceInternal::__dummyCallback = new DummyCallback;
+CallbackBasePtr IceInternal::__dummyCallback = ICE_MAKE_SHARED(DummyCallback);
-#ifdef ICE_CPP11
+#ifndef ICE_CPP11_MAPPING
+# ifdef ICE_CPP11_COMPILER
Ice::CallbackPtr
Ice::newCallback(const ::IceInternal::Function<void (const AsyncResultPtr&)>& completed,
@@ -564,7 +593,7 @@ Ice::newCallback(const ::IceInternal::Function<void (const AsyncResultPtr&)>& co
if(_sent != nullptr)
{
_sent(result);
- }
+ }
}
virtual bool
@@ -581,6 +610,7 @@ Ice::newCallback(const ::IceInternal::Function<void (const AsyncResultPtr&)>& co
return new Cpp11CB(completed, sent);
}
+# endif
#endif
void
@@ -596,4 +626,3 @@ IceInternal::CallbackBase::checkCallback(bool obj, bool cb)
}
}
-
diff --git a/cpp/src/Ice/BasicStream.cpp b/cpp/src/Ice/BasicStream.cpp
index e08914e0a7e..3bd7751a1e7 100644
--- a/cpp/src/Ice/BasicStream.cpp
+++ b/cpp/src/Ice/BasicStream.cpp
@@ -1580,16 +1580,28 @@ IceInternal::BasicStream::read(vector<wstring>& v)
}
void
-IceInternal::BasicStream::write(const ObjectPrx& v)
+#ifndef ICE_CPP11_MAPPING
+IceInternal::BasicStream::write(const ObjectPrxPtr& v)
+#else
+IceInternal::BasicStream::writeProxy(const ObjectPrxPtr& v)
+#endif
{
_instance->proxyFactory()->proxyToStream(v, this);
}
+#ifndef ICE_CPP11_MAPPING
void
-IceInternal::BasicStream::read(ObjectPrx& v)
+IceInternal::BasicStream::read(ObjectPrxPtr& v)
{
v = _instance->proxyFactory()->streamToProxy(this);
}
+#else
+ObjectPrxPtr
+IceInternal::BasicStream::readProxy()
+{
+ return _instance->proxyFactory()->streamToProxy(this);
+}
+#endif
Int
IceInternal::BasicStream::readEnum(Int maxValue)
@@ -1904,20 +1916,27 @@ IceInternal::BasicStream::EncapsDecoder::readTypeId(bool isIndex)
}
}
-Ice::ObjectPtr
+Ice::ValuePtr
IceInternal::BasicStream::EncapsDecoder::newInstance(const string& typeId)
{
- Ice::ObjectPtr v;
+ Ice::ValuePtr v;
//
// Try to find a factory registered for the specific type.
//
+#ifdef ICE_CPP11_MAPPING
+ function<ValuePtr (const string&)> userFactory = _servantFactoryManager->find(typeId);
+ if(userFactory)
+ {
+ v = userFactory(typeId);
+ }
+#else
ObjectFactoryPtr userFactory = _servantFactoryManager->find(typeId);
if(userFactory)
{
v = userFactory->create(typeId);
}
-
+#endif
//
// If that fails, invoke the default factory if one has been
// registered.
@@ -1927,7 +1946,11 @@ IceInternal::BasicStream::EncapsDecoder::newInstance(const string& typeId)
userFactory = _servantFactoryManager->find("");
if(userFactory)
{
+#ifdef ICE_CPP11_MAPPING
+ v = userFactory(typeId);
+#else
v = userFactory->create(typeId);
+#endif
}
}
@@ -1937,12 +1960,21 @@ IceInternal::BasicStream::EncapsDecoder::newInstance(const string& typeId)
//
if(!v)
{
+#ifdef ICE_CPP11_MAPPING
+ function<ValuePtr (const string&)> of = IceInternal::factoryTable->getObjectFactory(typeId);
+ if(of)
+ {
+ v = of(typeId);
+ assert(v);
+ }
+#else
ObjectFactoryPtr of = IceInternal::factoryTable->getObjectFactory(typeId);
if(of)
{
v = of->create(typeId);
assert(v);
}
+#endif
}
return v;
@@ -1990,7 +2022,7 @@ IceInternal::BasicStream::EncapsDecoder::addPatchEntry(Int index, PatchFunc patc
}
void
-IceInternal::BasicStream::EncapsDecoder::unmarshal(Int index, const Ice::ObjectPtr& v)
+IceInternal::BasicStream::EncapsDecoder::unmarshal(Int index, const Ice::ValuePtr& v)
{
//
// Add the object to the map of un-marshalled objects, this must
@@ -2030,10 +2062,12 @@ IceInternal::BasicStream::EncapsDecoder::unmarshal(Int index, const Ice::ObjectP
{
try
{
+#ifndef ICE_CPP11_MAPPING
if(_stream->instance()->collectObjects())
{
v->ice_collectable(true);
}
+#endif
v->ice_postUnmarshal();
}
catch(const std::exception& ex)
@@ -2063,10 +2097,12 @@ IceInternal::BasicStream::EncapsDecoder::unmarshal(Int index, const Ice::ObjectP
{
try
{
+#ifndef ICE_CPP11_MAPPING
if(_stream->instance()->collectObjects())
{
(*p)->ice_collectable(true);
}
+#endif
(*p)->ice_postUnmarshal();
}
catch(const std::exception& ex)
@@ -2107,7 +2143,7 @@ IceInternal::BasicStream::EncapsDecoder10::read(PatchFunc patchFunc, void* patch
// Calling the patch function for null instances is necessary for correct functioning of Ice for
// Python and Ruby.
//
- ObjectPtr nil;
+ ValuePtr nil;
patchFunc(patchAddr, nil);
}
else
@@ -2337,7 +2373,7 @@ IceInternal::BasicStream::EncapsDecoder10::readInstance()
//
startSlice();
const string mostDerivedId = _typeId;
- ObjectPtr v;
+ ValuePtr v;
while(true)
{
//
@@ -2397,7 +2433,7 @@ IceInternal::BasicStream::EncapsDecoder11::read(PatchFunc patchFunc, void* patch
//
if(patchFunc)
{
- ObjectPtr nil;
+ ValuePtr nil;
patchFunc(patchAddr, nil);
}
}
@@ -2685,7 +2721,7 @@ IceInternal::BasicStream::EncapsDecoder11::skipSlice()
//
// Preserve this slice.
//
- SliceInfoPtr info = new SliceInfo;
+ SliceInfoPtr info = ICE_MAKE_SHARED(SliceInfo);
info->typeId = _current->typeId;
info->compactId = _current->compactId;
info->hasOptionalMembers = _current->sliceFlags & FLAG_HAS_OPTIONAL_MEMBERS;
@@ -2768,7 +2804,7 @@ IceInternal::BasicStream::EncapsDecoder11::readInstance(Int index, PatchFunc pat
//
startSlice();
const string mostDerivedId = _current->typeId;
- Ice::ObjectPtr v;
+ Ice::ValuePtr v;
const CompactIdResolverPtr& compactIdResolver = _stream->instance()->initializationData().compactIdResolver;
while(true)
{
@@ -2853,7 +2889,7 @@ IceInternal::BasicStream::EncapsDecoder11::readInstance(Int index, PatchFunc pat
v = newInstance(Object::ice_staticId());
if(!v)
{
- v = new UnknownSlicedObject(mostDerivedId);
+ v = ICE_MAKE_SHARED(UnknownSlicedObject, mostDerivedId);
}
break;
@@ -2905,7 +2941,7 @@ IceInternal::BasicStream::EncapsDecoder11::readSlicedData()
// enclosing object.
//
const IndexList& table = _current->indirectionTables[n];
- vector<ObjectPtr>& objects = _current->slices[n]->objects;
+ vector<ValuePtr>& objects = _current->slices[n]->objects;
objects.resize(table.size());
IndexList::size_type j = 0;
for(IndexList::const_iterator p = table.begin(); p != table.end(); ++p)
@@ -2913,7 +2949,7 @@ IceInternal::BasicStream::EncapsDecoder11::readSlicedData()
addPatchEntry(*p, &patchHandle<Object>, &objects[j++]);
}
}
- return new SlicedData(_current->slices);
+ return ICE_MAKE_SHARED(SlicedData, _current->slices);
}
Int
@@ -2932,7 +2968,7 @@ IceInternal::BasicStream::EncapsEncoder::registerTypeId(const string& typeId)
}
void
-IceInternal::BasicStream::EncapsEncoder10::write(const ObjectPtr& v)
+IceInternal::BasicStream::EncapsEncoder10::write(const ValuePtr& v)
{
//
// Object references are encoded as a negative integer in 1.0.
@@ -3078,7 +3114,7 @@ IceInternal::BasicStream::EncapsEncoder10::writePendingObjects()
}
Int
-IceInternal::BasicStream::EncapsEncoder10::registerObject(const ObjectPtr& v)
+IceInternal::BasicStream::EncapsEncoder10::registerObject(const ValuePtr& v)
{
assert(v);
@@ -3109,7 +3145,7 @@ IceInternal::BasicStream::EncapsEncoder10::registerObject(const ObjectPtr& v)
}
void
-IceInternal::BasicStream::EncapsEncoder11::write(const ObjectPtr& v)
+IceInternal::BasicStream::EncapsEncoder11::write(const ValuePtr& v)
{
if(!v)
{
@@ -3354,7 +3390,7 @@ IceInternal::BasicStream::EncapsEncoder11::writeSlicedData(const SlicedDataPtr&
}
void
-IceInternal::BasicStream::EncapsEncoder11::writeInstance(const ObjectPtr& v)
+IceInternal::BasicStream::EncapsEncoder11::writeInstance(const ValuePtr& v)
{
assert(v);
@@ -3392,4 +3428,3 @@ IceInternal::BasicStream::EncapsEncoder11::writeInstance(const ObjectPtr& v)
_stream->writeSize(1); // Object instance marker.
v->__write(_stream);
}
-
diff --git a/cpp/src/Ice/BatchRequestQueue.cpp b/cpp/src/Ice/BatchRequestQueue.cpp
index c34de544df7..04bee6e06d5 100644
--- a/cpp/src/Ice/BatchRequestQueue.cpp
+++ b/cpp/src/Ice/BatchRequestQueue.cpp
@@ -25,7 +25,7 @@ class BatchRequestI : public Ice::BatchRequest
{
public:
- BatchRequestI(BatchRequestQueue& queue, const Ice::ObjectPrx& proxy, const string& operation, int size) :
+ BatchRequestI(BatchRequestQueue& queue, const Ice::ObjectPrxPtr& proxy, const string& operation, int size) :
_queue(queue), _proxy(proxy), _operation(operation), _size(size)
{
}
@@ -48,7 +48,7 @@ public:
return _operation;
}
- virtual const Ice::ObjectPrx&
+ virtual const Ice::ObjectPrxPtr&
getProxy() const
{
return _proxy;
@@ -57,7 +57,7 @@ public:
private:
BatchRequestQueue& _queue;
- const Ice::ObjectPrx& _proxy;
+ const Ice::ObjectPrxPtr& _proxy;
const std::string& _operation;
const int _size;
};
@@ -101,7 +101,7 @@ BatchRequestQueue::prepareBatchRequest(BasicStream* os)
}
void
-BatchRequestQueue::finishBatchRequest(BasicStream* os, const Ice::ObjectPrx& proxy, const std::string& operation)
+BatchRequestQueue::finishBatchRequest(BasicStream* os, const Ice::ObjectPrxPtr& proxy, const std::string& operation)
{
//
// No need for synchronization, no other threads are supposed
@@ -116,7 +116,11 @@ BatchRequestQueue::finishBatchRequest(BasicStream* os, const Ice::ObjectPrx& pro
if(_maxSize > 0 && _batchStream.b.size() >= _maxSize)
{
+#ifdef ICE_CPP11_MAPPING
+ proxy->ice_flushBatchRequests_async();
+#else
proxy->begin_ice_flushBatchRequests();
+#endif
}
assert(_batchMarker < _batchStream.b.size());
diff --git a/cpp/src/Ice/BatchRequestQueue.h b/cpp/src/Ice/BatchRequestQueue.h
index 6a082af1921..e562e637197 100644
--- a/cpp/src/Ice/BatchRequestQueue.h
+++ b/cpp/src/Ice/BatchRequestQueue.h
@@ -30,7 +30,7 @@ public:
BatchRequestQueue(const InstancePtr&, bool);
void prepareBatchRequest(BasicStream*);
- void finishBatchRequest(BasicStream*, const Ice::ObjectPrx&, const std::string&);
+ void finishBatchRequest(BasicStream*, const Ice::ObjectPrxPtr&, const std::string&);
void abortBatchRequest(BasicStream*);
int swap(BasicStream*);
diff --git a/cpp/src/Ice/CollocatedRequestHandler.cpp b/cpp/src/Ice/CollocatedRequestHandler.cpp
index 6a641c38037..20349210b21 100644
--- a/cpp/src/Ice/CollocatedRequestHandler.cpp
+++ b/cpp/src/Ice/CollocatedRequestHandler.cpp
@@ -35,7 +35,15 @@ public:
CollocatedRequestHandler* handler,
Int requestId,
Int batchRequestNum) :
- _out(out), _os(os), _handler(handler), _requestId(requestId), _batchRequestNum(batchRequestNum)
+ _out(out),
+ _os(os),
+#ifdef ICE_CPP11_MAPPING
+ _handler(dynamic_pointer_cast<CollocatedRequestHandler>(handler->shared_from_this())),
+#else
+ _handler(handler),
+#endif
+ _requestId(requestId),
+ _batchRequestNum(batchRequestNum)
{
}
@@ -63,7 +71,7 @@ public:
InvokeAllAsync(const OutgoingAsyncBasePtr& outAsync,
BasicStream* os,
- CollocatedRequestHandler* handler,
+ const CollocatedRequestHandlerPtr& handler,
Int requestId,
Int batchRequestNum) :
_outAsync(outAsync), _os(os), _handler(handler), _requestId(requestId), _batchRequestNum(batchRequestNum)
@@ -103,7 +111,7 @@ fillInValue(BasicStream* os, int pos, Int value)
CollocatedRequestHandler::CollocatedRequestHandler(const ReferencePtr& ref, const ObjectAdapterPtr& adapter) :
RequestHandler(ref),
- _adapter(ObjectAdapterIPtr::dynamicCast(adapter)),
+ _adapter(ICE_DYNAMIC_CAST(ObjectAdapterI, adapter)),
_dispatcher(_reference->getInstance()->initializationData().dispatcher),
_logger(_reference->getInstance()->initializationData().logger), // Cached for better performance.
_traceLevels(_reference->getInstance()->traceLevels()), // Cached for better performance.
@@ -118,7 +126,11 @@ CollocatedRequestHandler::~CollocatedRequestHandler()
RequestHandlerPtr
CollocatedRequestHandler::update(const RequestHandlerPtr& previousHandler, const RequestHandlerPtr& newHandler)
{
+#ifdef ICE_CPP11_MAPPING
+ return previousHandler.get() == this ? newHandler : dynamic_pointer_cast<RequestHandler>(shared_from_this());
+#else
return previousHandler.get() == this ? newHandler : this;
+#endif
}
bool
@@ -190,7 +202,7 @@ CollocatedRequestHandler::asyncRequestCanceled(const OutgoingAsyncBasePtr& outAs
return;
}
- OutgoingAsyncPtr o = OutgoingAsyncPtr::dynamicCast(outAsync);
+ OutgoingAsyncPtr o = ICE_DYNAMIC_CAST(OutgoingAsync, outAsync);
if(o)
{
for(map<Int, OutgoingAsyncBasePtr>::iterator q = _asyncRequests.begin(); q != _asyncRequests.end(); ++q)
@@ -262,15 +274,32 @@ CollocatedRequestHandler::invokeAsyncRequest(OutgoingAsyncBase* outAsync, int ba
{
Lock sync(*this);
- outAsync->cancelable(this); // This will throw if the request is canceled
+ //
+ // This will throw if the request is canceled
+ //
+#ifdef ICE_CPP11_MAPPING
+ outAsync->cancelable(dynamic_pointer_cast<CollocatedRequestHandler>(shared_from_this()));
+#else
+ outAsync->cancelable(this);
+#endif
if(_response)
{
requestId = ++_requestId;
+#ifdef ICE_CPP11_MAPPING
+ _asyncRequests.insert(make_pair(requestId,
+ dynamic_pointer_cast<OutgoingAsyncBase>(outAsync->shared_from_this())));
+#else
_asyncRequests.insert(make_pair(requestId, outAsync));
+#endif
}
+#ifdef ICE_CPP11_MAPPING
+ _sendAsyncRequests.insert(make_pair(
+ dynamic_pointer_cast<OutgoingAsyncBase>(outAsync->shared_from_this()), requestId));
+#else
_sendAsyncRequests.insert(make_pair(outAsync, requestId));
+#endif
}
catch(...)
{
@@ -280,8 +309,17 @@ CollocatedRequestHandler::invokeAsyncRequest(OutgoingAsyncBase* outAsync, int ba
outAsync->attachCollocatedObserver(_adapter, requestId);
+#ifdef ICE_CPP11_MAPPING
+ _adapter->getThreadPool()->dispatch(new InvokeAllAsync(
+ dynamic_pointer_cast<OutgoingAsyncBase>(outAsync->shared_from_this()),
+ outAsync->getOs(),
+ dynamic_pointer_cast<CollocatedRequestHandler>(shared_from_this()),
+ requestId,
+ batchRequestNum));
+#else
_adapter->getThreadPool()->dispatch(new InvokeAllAsync(outAsync, outAsync->getOs(), this, requestId,
batchRequestNum));
+#endif
return AsyncStatusQueued;
}
@@ -392,7 +430,12 @@ CollocatedRequestHandler::sentAsync(OutgoingAsyncBase* outAsync)
{
{
Lock sync(*this);
+#ifdef ICE_CPP11_MAPPING
+ if(_sendAsyncRequests.erase(outAsync ?
+ dynamic_pointer_cast<IceInternal::OutgoingAsyncBase>(outAsync->shared_from_this()) : nullptr) == 0)
+#else
if(_sendAsyncRequests.erase(outAsync) == 0)
+#endif
{
return false; // The request timed-out.
}
diff --git a/cpp/src/Ice/CollocatedRequestHandler.h b/cpp/src/Ice/CollocatedRequestHandler.h
index 248984ed647..f98407c0ef3 100644
--- a/cpp/src/Ice/CollocatedRequestHandler.h
+++ b/cpp/src/Ice/CollocatedRequestHandler.h
@@ -19,12 +19,13 @@
#include <Ice/ObjectAdapterF.h>
#include <Ice/LoggerF.h>
#include <Ice/TraceLevelsF.h>
+#include <Ice/VirtualShared.h>
namespace Ice
{
class ObjectAdapterI;
-typedef IceUtil::Handle<ObjectAdapterI> ObjectAdapterIPtr;
+ICE_DEFINE_PTR(ObjectAdapterIPtr, ObjectAdapterI);
}
@@ -36,7 +37,12 @@ class Outgoing;
class OutgoingAsyncBase;
class OutgoingAsync;
-class CollocatedRequestHandler : public RequestHandler, public ResponseHandler, private IceUtil::Monitor<IceUtil::Mutex>
+class CollocatedRequestHandler : public RequestHandler,
+ public ResponseHandler,
+ private IceUtil::Monitor<IceUtil::Mutex>
+#ifndef ICE_CPP11_MAPPING
+ , public virtual ::IceUtil::Shared
+#endif
{
public:
@@ -86,7 +92,7 @@ private:
std::map<Ice::Int, OutgoingBase*> _requests;
std::map<Ice::Int, OutgoingAsyncBasePtr> _asyncRequests;
};
-typedef IceUtil::Handle<CollocatedRequestHandler> CollocatedRequestHandlerPtr;
+ICE_DEFINE_PTR(CollocatedRequestHandlerPtr, CollocatedRequestHandler);
}
diff --git a/cpp/src/Ice/CommunicatorI.cpp b/cpp/src/Ice/CommunicatorI.cpp
index 985acb23aa9..4fddd5e9e62 100644
--- a/cpp/src/Ice/CommunicatorI.cpp
+++ b/cpp/src/Ice/CommunicatorI.cpp
@@ -56,26 +56,26 @@ Ice::CommunicatorI::isShutdown() const
return _instance->objectAdapterFactory()->isShutdown();
}
-ObjectPrx
+ObjectPrxPtr
Ice::CommunicatorI::stringToProxy(const string& s) const
{
return _instance->proxyFactory()->stringToProxy(s);
}
string
-Ice::CommunicatorI::proxyToString(const ObjectPrx& proxy) const
+Ice::CommunicatorI::proxyToString(const ObjectPrxPtr& proxy) const
{
return _instance->proxyFactory()->proxyToString(proxy);
}
-ObjectPrx
+ObjectPrxPtr
Ice::CommunicatorI::propertyToProxy(const string& p) const
{
return _instance->proxyFactory()->propertyToProxy(p);
}
PropertyDict
-Ice::CommunicatorI::proxyToProperty(const ObjectPrx& proxy, const string& property) const
+Ice::CommunicatorI::proxyToProperty(const ObjectPrxPtr& proxy, const string& property) const
{
return _instance->proxyFactory()->proxyToProperty(proxy, property);
}
@@ -95,7 +95,7 @@ Ice::CommunicatorI::identityToString(const Identity& ident) const
ObjectAdapterPtr
Ice::CommunicatorI::createObjectAdapter(const string& name)
{
- return _instance->objectAdapterFactory()->createObjectAdapter(name, 0);
+ return _instance->objectAdapterFactory()->createObjectAdapter(name, ICE_NULLPTR);
}
ObjectAdapterPtr
@@ -108,11 +108,11 @@ Ice::CommunicatorI::createObjectAdapterWithEndpoints(const string& name, const s
}
getProperties()->setProperty(oaName + ".Endpoints", endpoints);
- return _instance->objectAdapterFactory()->createObjectAdapter(oaName, 0);
+ return _instance->objectAdapterFactory()->createObjectAdapter(oaName, ICE_NULLPTR);
}
ObjectAdapterPtr
-Ice::CommunicatorI::createObjectAdapterWithRouter(const string& name, const RouterPrx& router)
+Ice::CommunicatorI::createObjectAdapterWithRouter(const string& name, const RouterPrxPtr& router)
{
string oaName = name;
if(oaName.empty())
@@ -129,17 +129,31 @@ Ice::CommunicatorI::createObjectAdapterWithRouter(const string& name, const Rout
return _instance->objectAdapterFactory()->createObjectAdapter(oaName, router);
}
+#ifdef ICE_CPP11_MAPPING
void
-Ice::CommunicatorI::addObjectFactory(const ObjectFactoryPtr& factory, const string& id)
+Ice::CommunicatorI::addObjectFactory(function<::Ice::ValuePtr (const string&)> factory, const string& id)
+{
+ _instance->servantFactoryManager()->add(move(factory), id);
+}
+
+function<::Ice::ValuePtr (const string&)>
+Ice::CommunicatorI::findObjectFactory(const string& id) const
+{
+ return _instance->servantFactoryManager()->find(id);
+}
+#else
+void
+Ice::CommunicatorI::addObjectFactory(const ::Ice::ObjectFactoryPtr& factory, const string& id)
{
_instance->servantFactoryManager()->add(factory, id);
}
-ObjectFactoryPtr
+::Ice::ObjectFactoryPtr
Ice::CommunicatorI::findObjectFactory(const string& id) const
{
return _instance->servantFactoryManager()->find(id);
}
+#endif
PropertiesPtr
Ice::CommunicatorI::getProperties() const
@@ -159,26 +173,26 @@ Ice::CommunicatorI::getObserver() const
return _instance->initializationData().observer;
}
-RouterPrx
+RouterPrxPtr
Ice::CommunicatorI::getDefaultRouter() const
{
return _instance->referenceFactory()->getDefaultRouter();
}
void
-Ice::CommunicatorI::setDefaultRouter(const RouterPrx& router)
+Ice::CommunicatorI::setDefaultRouter(const RouterPrxPtr& router)
{
_instance->setDefaultRouter(router);
}
-LocatorPrx
+LocatorPrxPtr
Ice::CommunicatorI::getDefaultLocator() const
{
return _instance->referenceFactory()->getDefaultLocator();
}
void
-Ice::CommunicatorI::setDefaultLocator(const LocatorPrx& locator)
+Ice::CommunicatorI::setDefaultLocator(const LocatorPrxPtr& locator)
{
_instance->setDefaultLocator(locator);
}
@@ -195,6 +209,117 @@ Ice::CommunicatorI::getPluginManager() const
return _instance->pluginManager();
}
+namespace
+{
+
+const ::std::string __flushBatchRequests_name = "flushBatchRequests";
+
+}
+
+#ifdef ICE_CPP11_MAPPING
+void
+Ice::CommunicatorI::flushBatchRequests()
+{
+ promise<bool> promise;
+ flushBatchRequests_async(
+ nullptr,
+ [&](exception_ptr ex)
+ {
+ promise.set_exception(move(ex));
+ },
+ [&](bool sentSynchronously)
+ {
+ promise.set_value(sentSynchronously);
+ });
+ promise.get_future().get();
+}
+
+::std::function<void ()>
+Ice::CommunicatorI::flushBatchRequests_async(
+ function<void ()> completed,
+ function<void (exception_ptr)> exception,
+ function<void (bool)> sent)
+{
+ class FlushBatchRequestsCallback : public CallbackBase
+ {
+ public:
+
+ FlushBatchRequestsCallback(function<void (exception_ptr)> exception,
+ function<void (bool)> sent,
+ shared_ptr<Communicator> communicator) :
+ _exception(move(exception)),
+ _sent(move(sent)),
+ _communicator(move(communicator))
+ {
+ }
+
+ virtual void sent(const AsyncResultPtr& result) const
+ {
+ try
+ {
+ AsyncResult::__check(result, _communicator.get(), __flushBatchRequests_name);
+ result->__wait();
+ }
+ catch(const ::Ice::Exception&)
+ {
+ _exception(current_exception());
+ }
+
+ if(_sent)
+ {
+ _sent(result->sentSynchronously());
+ }
+ }
+
+ virtual bool hasSentCallback() const
+ {
+ return true;
+ }
+
+
+ virtual void
+ completed(const ::Ice::AsyncResultPtr& result) const
+ {
+ try
+ {
+ AsyncResult::__check(result, _communicator.get(), __flushBatchRequests_name);
+ result->__wait();
+ }
+ catch(const ::Ice::Exception&)
+ {
+ _exception(current_exception());
+ }
+ }
+
+ private:
+
+ function<void (exception_ptr)> _exception;
+ function<void (bool)> _sent;
+ shared_ptr<Communicator> _communicator;
+ };
+
+ OutgoingConnectionFactoryPtr connectionFactory = _instance->outgoingConnectionFactory();
+ ObjectAdapterFactoryPtr adapterFactory = _instance->objectAdapterFactory();
+
+ auto self = dynamic_pointer_cast<CommunicatorI>(shared_from_this());
+
+ auto result = make_shared<CommunicatorFlushBatchAsync>(self, _instance, __flushBatchRequests_name,
+ make_shared<FlushBatchRequestsCallback>(move(exception), move(sent), self));
+
+ connectionFactory->flushAsyncBatchRequests(result);
+ adapterFactory->flushAsyncBatchRequests(result);
+
+ //
+ // Inform the callback that we have finished initiating all of the
+ // flush requests.
+ //
+ result->ready();
+ return [result]()
+ {
+ result->cancel();
+ };
+}
+#else
void
Ice::CommunicatorI::flushBatchRequests()
{
@@ -224,7 +349,7 @@ AsyncResultPtr
Ice::CommunicatorI::begin_flushBatchRequests(const IceInternal::Function<void (const Exception&)>& exception,
const IceInternal::Function<void (bool)>& sent)
{
-#ifdef ICE_CPP11
+#ifdef ICE_CPP11_COMPILER
class Cpp11CB : public IceInternal::Cpp11FnCallbackNC
{
@@ -254,20 +379,13 @@ Ice::CommunicatorI::begin_flushBatchRequests(const IceInternal::Function<void (c
}
};
- return __begin_flushBatchRequests(new Cpp11CB(exception, sent), 0);
+ return __begin_flushBatchRequests(ICE_MAKE_SHARED(Cpp11CB, exception, sent), 0);
#else
assert(false); // Ice not built with C++11 support.
return 0;
#endif
}
-namespace
-{
-
-const ::std::string __flushBatchRequests_name = "flushBatchRequests";
-
-}
-
AsyncResultPtr
Ice::CommunicatorI::__begin_flushBatchRequests(const IceInternal::CallbackBasePtr& cb, const LocalObjectPtr& cookie)
{
@@ -278,7 +396,7 @@ Ice::CommunicatorI::__begin_flushBatchRequests(const IceInternal::CallbackBasePt
// This callback object receives the results of all invocations
// of Connection::begin_flushBatchRequests.
//
- CommunicatorFlushBatchAsyncPtr result = new CommunicatorFlushBatchAsync(this,
+ CommunicatorFlushBatchAsyncPtr result = new CommunicatorFlushBatchAsync(ICE_SHARED_FROM_THIS,
_instance,
__flushBatchRequests_name,
cb,
@@ -302,13 +420,14 @@ Ice::CommunicatorI::end_flushBatchRequests(const AsyncResultPtr& r)
AsyncResult::__check(r, this, __flushBatchRequests_name);
r->__wait();
}
+#endif
-ObjectPrx
+ObjectPrxPtr
Ice::CommunicatorI::createAdmin(const ObjectAdapterPtr& adminAdapter, const Identity& adminId)
{
return _instance->createAdmin(adminAdapter, adminId);
}
-ObjectPrx
+ObjectPrxPtr
Ice::CommunicatorI::getAdmin() const
{
return _instance->getAdmin();
@@ -338,27 +457,27 @@ Ice::CommunicatorI::findAllAdminFacets()
return _instance->findAllAdminFacets();
}
-Ice::CommunicatorI::CommunicatorI(const InitializationData& initData)
+CommunicatorIPtr
+Ice::CommunicatorI::create(const InitializationData& initData)
{
- __setNoDelete(true);
+ Ice::CommunicatorIPtr communicator = ICE_MAKE_SHARED(CommunicatorI);
try
{
- const_cast<InstancePtr&>(_instance) = new Instance(this, initData);
+ const_cast<InstancePtr&>(communicator->_instance) = new Instance(communicator, initData);
//
// Keep a reference to the dynamic library list to ensure
// the libraries are not unloaded until this Communicator's
// destructor is invoked.
//
- const_cast<DynamicLibraryListPtr&>(_dynamicLibraryList) = _instance->dynamicLibraryList();
+ const_cast<DynamicLibraryListPtr&>(communicator->_dynamicLibraryList) = communicator->_instance->dynamicLibraryList();
}
catch(...)
{
- destroy();
- __setNoDelete(false);
+ communicator->destroy();
throw;
}
- __setNoDelete(false);
+ return communicator;
}
Ice::CommunicatorI::~CommunicatorI()
@@ -375,7 +494,7 @@ Ice::CommunicatorI::finishSetup(int& argc, char* argv[])
{
try
{
- _instance->finishSetup(argc, argv, this);
+ _instance->finishSetup(argc, argv, ICE_SHARED_FROM_THIS);
}
catch(...)
{
diff --git a/cpp/src/Ice/CommunicatorI.h b/cpp/src/Ice/CommunicatorI.h
index 373a56c316e..d0ba4285695 100644
--- a/cpp/src/Ice/CommunicatorI.h
+++ b/cpp/src/Ice/CommunicatorI.h
@@ -20,30 +20,39 @@
namespace Ice
{
-class CommunicatorI : public Communicator
+class CommunicatorI;
+ICE_DEFINE_PTR(CommunicatorIPtr, CommunicatorI);
+
+class CommunicatorI : public ICE_ENABLE_SHARED_FROM_THIS(CommunicatorI),
+ public Communicator
{
public:
-
+
virtual void destroy();
virtual void shutdown();
virtual void waitForShutdown();
virtual bool isShutdown() const;
- virtual ObjectPrx stringToProxy(const std::string&) const;
- virtual std::string proxyToString(const ObjectPrx&) const;
+ virtual ObjectPrxPtr stringToProxy(const std::string&) const;
+ virtual std::string proxyToString(const ObjectPrxPtr&) const;
- virtual ObjectPrx propertyToProxy(const std::string&) const;
- virtual PropertyDict proxyToProperty(const ObjectPrx&, const std::string&) const;
+ virtual ObjectPrxPtr propertyToProxy(const std::string&) const;
+ virtual PropertyDict proxyToProperty(const ObjectPrxPtr&, const std::string&) const;
virtual Identity stringToIdentity(const std::string&) const;
virtual std::string identityToString(const Identity&) const;
virtual ObjectAdapterPtr createObjectAdapter(const std::string&);
virtual ObjectAdapterPtr createObjectAdapterWithEndpoints(const std::string&, const std::string&);
- virtual ObjectAdapterPtr createObjectAdapterWithRouter(const std::string&, const RouterPrx&);
+ virtual ObjectAdapterPtr createObjectAdapterWithRouter(const std::string&, const RouterPrxPtr&);
+#ifdef ICE_CPP11_MAPPING
+ virtual void addObjectFactory(std::function<std::shared_ptr<Ice::Value> (const std::string&)>, const std::string&);
+ virtual std::function<::std::shared_ptr<Ice::Value> (const std::string&)> findObjectFactory(const std::string&) const;
+#else
virtual void addObjectFactory(const ObjectFactoryPtr&, const std::string&);
virtual ObjectFactoryPtr findObjectFactory(const std::string&) const;
+#endif
virtual ImplicitContextPtr getImplicitContext() const;
@@ -51,16 +60,23 @@ public:
virtual LoggerPtr getLogger() const;
virtual Ice::Instrumentation::CommunicatorObserverPtr getObserver() const;
- virtual RouterPrx getDefaultRouter() const;
- virtual void setDefaultRouter(const RouterPrx&);
+ virtual RouterPrxPtr getDefaultRouter() const;
+ virtual void setDefaultRouter(const RouterPrxPtr&);
- virtual LocatorPrx getDefaultLocator() const;
- virtual void setDefaultLocator(const LocatorPrx&);
+ virtual LocatorPrxPtr getDefaultLocator() const;
+ virtual void setDefaultLocator(const LocatorPrxPtr&);
virtual PluginManagerPtr getPluginManager() const;
virtual void flushBatchRequests();
+#ifdef ICE_CPP11_MAPPING
+ virtual ::std::function<void ()>
+ flushBatchRequests_async(
+ ::std::function<void ()> completed,
+ ::std::function<void (std::exception_ptr)> exception = nullptr,
+ ::std::function<void (bool)> sent = nullptr);
+#else
virtual AsyncResultPtr begin_flushBatchRequests();
virtual AsyncResultPtr begin_flushBatchRequests(const CallbackPtr&, const LocalObjectPtr& = 0);
virtual AsyncResultPtr begin_flushBatchRequests(const Callback_Communicator_flushBatchRequestsPtr&,
@@ -71,18 +87,21 @@ public:
const IceInternal::Function<void (bool)>& = IceInternal::Function<void (bool)>());
virtual void end_flushBatchRequests(const AsyncResultPtr&);
+#endif
- virtual ObjectPrx createAdmin(const ObjectAdapterPtr&, const Identity&);
- virtual ObjectPrx getAdmin() const;
+ virtual ObjectPrxPtr createAdmin(const ObjectAdapterPtr&, const Identity&);
+ virtual ObjectPrxPtr getAdmin() const;
virtual void addAdminFacet(const ObjectPtr&, const std::string&);
virtual ObjectPtr removeAdminFacet(const std::string&);
virtual ObjectPtr findAdminFacet(const std::string&);
virtual FacetMap findAllAdminFacets();
+ virtual ~CommunicatorI();
+
private:
- CommunicatorI(const InitializationData&);
- virtual ~CommunicatorI();
+ static CommunicatorIPtr
+ create(const InitializationData&);
//
// Certain initialization tasks need to be completed after the
diff --git a/cpp/src/Ice/ConnectRequestHandler.cpp b/cpp/src/Ice/ConnectRequestHandler.cpp
index caabcbd3e75..3818144f279 100644
--- a/cpp/src/Ice/ConnectRequestHandler.cpp
+++ b/cpp/src/Ice/ConnectRequestHandler.cpp
@@ -23,9 +23,11 @@
using namespace std;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(ConnectRequestHandler* p) { return p; }
+#endif
-ConnectRequestHandler::ConnectRequestHandler(const ReferencePtr& ref, const Ice::ObjectPrx& proxy) :
+ConnectRequestHandler::ConnectRequestHandler(const ReferencePtr& ref, const Ice::ObjectPrxPtr& proxy) :
RequestHandler(ref),
_proxy(proxy),
_initialized(false),
@@ -33,25 +35,21 @@ ConnectRequestHandler::ConnectRequestHandler(const ReferencePtr& ref, const Ice:
{
}
-ConnectRequestHandler::~ConnectRequestHandler()
-{
-}
-
RequestHandlerPtr
-ConnectRequestHandler::connect(const Ice::ObjectPrx& proxy)
+ConnectRequestHandler::connect(const Ice::ObjectPrxPtr& proxy)
{
Lock sync(*this);
if(!initialized())
{
_proxies.insert(proxy);
}
- return _requestHandler ? _requestHandler : this;
+ return _requestHandler ? _requestHandler : ICE_SHARED_FROM_THIS;
}
RequestHandlerPtr
ConnectRequestHandler::update(const RequestHandlerPtr& previousHandler, const RequestHandlerPtr& newHandler)
{
- return previousHandler.get() == this ? newHandler : this;
+ return previousHandler.get() == this ? newHandler : ICE_SHARED_FROM_THIS;
}
bool
@@ -77,7 +75,7 @@ ConnectRequestHandler::sendAsyncRequest(const ProxyOutgoingAsyncBasePtr& out)
Lock sync(*this);
if(!_initialized)
{
- out->cancelable(this); // This will throw if the request is canceled
+ out->cancelable(ICE_SHARED_FROM_THIS); // This will throw if the request is canceled
}
if(!initialized())
@@ -205,7 +203,11 @@ ConnectRequestHandler::setConnection(const Ice::ConnectionIPtr& connection, bool
// add this proxy to the router info object.
//
RouterInfoPtr ri = _reference->getRouterInfo();
+#ifdef ICE_CPP11_MAPPING
+ if(ri && !ri->addProxy(_proxy, dynamic_pointer_cast<AddProxyCallback>(shared_from_this())))
+#else
if(ri && !ri->addProxy(_proxy, this))
+#endif
{
return; // The request handler will be initialized once addProxy returns.
}
@@ -233,7 +235,7 @@ ConnectRequestHandler::setException(const Ice::LocalException& ex)
//
try
{
- _reference->getInstance()->requestHandlerFactory()->removeRequestHandler(_reference, this);
+ _reference->getInstance()->requestHandlerFactory()->removeRequestHandler(_reference, ICE_SHARED_FROM_THIS);
}
catch(const Ice::CommunicatorDestroyedException&)
{
@@ -342,7 +344,7 @@ ConnectRequestHandler::flushRequests()
exception.reset(ex.get()->ice_clone());
// Remove the request handler before retrying.
- _reference->getInstance()->requestHandlerFactory()->removeRequestHandler(_reference, this);
+ _reference->getInstance()->requestHandlerFactory()->removeRequestHandler(_reference, ICE_SHARED_FROM_THIS);
if(req.out)
{
@@ -376,10 +378,10 @@ ConnectRequestHandler::flushRequests()
//
if(_reference->getCacheConnection() && !exception.get())
{
- _requestHandler = new ConnectionRequestHandler(_reference, _connection, _compress);
- for(set<Ice::ObjectPrx>::const_iterator p = _proxies.begin(); p != _proxies.end(); ++p)
+ _requestHandler = ICE_MAKE_SHARED(ConnectionRequestHandler, _reference, _connection, _compress);
+ for(set<Ice::ObjectPrxPtr>::const_iterator p = _proxies.begin(); p != _proxies.end(); ++p)
{
- (*p)->__updateRequestHandler(this, _requestHandler);
+ (*p)->__updateRequestHandler(ICE_SHARED_FROM_THIS, _requestHandler);
}
}
@@ -394,10 +396,11 @@ ConnectRequestHandler::flushRequests()
// Only remove once all the requests are flushed to
// guarantee serialization.
//
- _reference->getInstance()->requestHandlerFactory()->removeRequestHandler(_reference, this);
+ _reference->getInstance()->requestHandlerFactory()->removeRequestHandler(_reference, ICE_SHARED_FROM_THIS);
_proxies.clear();
_proxy = 0; // Break cyclic reference count.
notifyAll();
}
}
+
diff --git a/cpp/src/Ice/ConnectRequestHandler.h b/cpp/src/Ice/ConnectRequestHandler.h
index fc202d1c893..e8d61faa379 100644
--- a/cpp/src/Ice/ConnectRequestHandler.h
+++ b/cpp/src/Ice/ConnectRequestHandler.h
@@ -30,14 +30,14 @@ namespace IceInternal
class ConnectRequestHandler : public RequestHandler,
public Reference::GetConnectionCallback,
public RouterInfo::AddProxyCallback,
- public IceUtil::Monitor<IceUtil::Mutex>
+ public IceUtil::Monitor<IceUtil::Mutex>,
+ public ICE_ENABLE_SHARED_FROM_THIS(ConnectRequestHandler)
{
public:
- ConnectRequestHandler(const ReferencePtr&, const Ice::ObjectPrx&);
- virtual ~ConnectRequestHandler();
+ ConnectRequestHandler(const ReferencePtr&, const Ice::ObjectPrxPtr&);
- RequestHandlerPtr connect(const Ice::ObjectPrx&);
+ RequestHandlerPtr connect(const Ice::ObjectPrxPtr&);
virtual RequestHandlerPtr update(const RequestHandlerPtr&, const RequestHandlerPtr&);
virtual bool sendRequest(ProxyOutgoingBase*);
@@ -69,8 +69,8 @@ private:
ProxyOutgoingAsyncBasePtr outAsync;
};
- Ice::ObjectPrx _proxy;
- std::set<Ice::ObjectPrx> _proxies;
+ Ice::ObjectPrxPtr _proxy;
+ std::set<Ice::ObjectPrxPtr> _proxies;
Ice::ConnectionIPtr _connection;
bool _compress;
diff --git a/cpp/src/Ice/ConnectRequestHandlerF.h b/cpp/src/Ice/ConnectRequestHandlerF.h
index f60cdaa1804..054567aae84 100644
--- a/cpp/src/Ice/ConnectRequestHandlerF.h
+++ b/cpp/src/Ice/ConnectRequestHandlerF.h
@@ -17,8 +17,12 @@ namespace IceInternal
{
class ConnectRequestHandler;
+#ifdef ICE_CPP11_MAPPING
+typedef ::std::shared_ptr<ConnectRequestHandler> ConnectRequestHandlerPtr;
+#else
ICE_API IceUtil::Shared* upCast(ConnectRequestHandler*);
typedef IceInternal::Handle<ConnectRequestHandler> ConnectRequestHandlerPtr;
+#endif
}
diff --git a/cpp/src/Ice/ConnectionFactory.cpp b/cpp/src/Ice/ConnectionFactory.cpp
index 3dbef2a5a6d..6ce8b78d45e 100644
--- a/cpp/src/Ice/ConnectionFactory.cpp
+++ b/cpp/src/Ice/ConnectionFactory.cpp
@@ -44,7 +44,10 @@ using namespace Ice::Instrumentation;
using namespace IceInternal;
IceUtil::Shared* IceInternal::upCast(OutgoingConnectionFactory* p) { return p; }
+
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(IncomingConnectionFactory* p) { return p; }
+#endif
namespace
{
@@ -57,6 +60,38 @@ struct RandomNumberGenerator : public std::unary_function<ptrdiff_t, ptrdiff_t>
}
};
+#ifdef ICE_CPP11_MAPPING
+template <typename Map> void
+remove(Map& m, const typename Map::key_type& k, const typename Map::mapped_type& v)
+{
+ auto pr = m.equal_range(k);
+ assert(pr.first != pr.second);
+ for(auto q = pr.first; q != pr.second; ++q)
+ {
+ if(q->second.get() == v.get())
+ {
+ m.erase(q);
+ return;
+ }
+ }
+ assert(false); // Nothing was removed which is an error.
+}
+
+template<typename Map> typename Map::mapped_type
+find(const Map& m, const typename Map::key_type& k, function<bool (const typename Map::mapped_type&)> predicate)
+{
+ auto pr = m.equal_range(k);
+ for(auto q = pr.first; q != pr.second; ++q)
+ {
+ if(predicate(q->second))
+ {
+ return q->second;
+ }
+ }
+ return nullptr;
+}
+
+#else
template <typename K, typename V> void
remove(multimap<K, V>& m, K k, V v)
{
@@ -89,6 +124,7 @@ find(const multimap<K,::IceInternal::Handle<V> >& m,
}
return IceInternal::Handle<V>();
}
+#endif
}
@@ -198,7 +234,11 @@ IceInternal::OutgoingConnectionFactory::create(const vector<EndpointIPtr>& endpt
return;
}
+#ifdef ICE_CPP11_MAPPING
+ auto cb = make_shared<ConnectCallback>(_instance, this, endpoints, hasMore, callback, selType);
+#else
ConnectCallbackPtr cb = new ConnectCallback(_instance, this, endpoints, hasMore, callback, selType);
+#endif
cb->getConnectors();
}
@@ -545,8 +585,8 @@ IceInternal::OutgoingConnectionFactory::createConnection(const TransceiverPtr& t
throw Ice::CommunicatorDestroyedException(__FILE__, __LINE__);
}
- connection = new ConnectionI(_communicator, _instance, _monitor, transceiver, ci.connector,
- ci.endpoint->compress(false), 0);
+ connection = ConnectionI::create(_communicator, _instance, _monitor, transceiver, ci.connector,
+ ci.endpoint->compress(false), ICE_NULLPTR);
}
catch(const Ice::LocalException&)
{
@@ -827,7 +867,12 @@ IceInternal::OutgoingConnectionFactory::ConnectCallback::connectionStartComplete
}
connection->activate();
+#ifdef ICE_CPP11_MAPPING
+ _factory->finishGetConnection(_connectors, *_iter, connection,
+ dynamic_pointer_cast<ConnectCallback>(shared_from_this()));
+#else
_factory->finishGetConnection(_connectors, *_iter, connection, this);
+#endif
}
void
@@ -845,7 +890,11 @@ IceInternal::OutgoingConnectionFactory::ConnectCallback::connectionStartFailed(c
_factory->handleConnectionException(ex, _hasMore || _iter != _connectors.end() - 1);
if(dynamic_cast<const Ice::CommunicatorDestroyedException*>(&ex)) // No need to continue.
{
+#ifdef ICE_CPP11_MAPPING
+ _factory->finishGetConnection(_connectors, ex, dynamic_pointer_cast<ConnectCallback>(shared_from_this()));
+#else
_factory->finishGetConnection(_connectors, ex, this);
+#endif
}
else if(++_iter != _connectors.end()) // Try the next connector.
{
@@ -853,7 +902,11 @@ IceInternal::OutgoingConnectionFactory::ConnectCallback::connectionStartFailed(c
}
else
{
+#ifdef ICE_CPP11_MAPPING
+ _factory->finishGetConnection(_connectors, ex, dynamic_pointer_cast<ConnectCallback>(shared_from_this()));
+#else
_factory->finishGetConnection(_connectors, ex, this);
+#endif
}
}
@@ -936,7 +989,8 @@ IceInternal::OutgoingConnectionFactory::ConnectCallback::nextEndpoint()
try
{
assert(_endpointsIter != _endpoints.end());
- (*_endpointsIter)->connectors_async(_selType, this);
+ (*_endpointsIter)->connectors_async(_selType, ICE_SHARED_FROM_THIS);
+
}
catch(const Ice::LocalException& ex)
{
@@ -954,7 +1008,14 @@ IceInternal::OutgoingConnectionFactory::ConnectCallback::getConnection()
// connection.
//
bool compress;
+#ifdef ICE_CPP11_MAPPING
+ Ice::ConnectionIPtr connection = _factory->getConnection(
+ _connectors,
+ dynamic_pointer_cast<ConnectCallback>(shared_from_this()),
+ compress);
+#else
Ice::ConnectionIPtr connection = _factory->getConnection(_connectors, this, compress);
+#endif
if(!connection)
{
//
@@ -982,7 +1043,6 @@ IceInternal::OutgoingConnectionFactory::ConnectCallback::nextConnector()
Ice::ConnectionIPtr connection;
try
{
-
const CommunicatorObserverPtr& obsv = _factory->_instance->initializationData().observer;
if(obsv)
{
@@ -1002,7 +1062,7 @@ IceInternal::OutgoingConnectionFactory::ConnectCallback::nextConnector()
<< _iter->connector->toString();
}
connection = _factory->createConnection(_iter->connector->connect(), *_iter);
- connection->start(this);
+ connection->start(ICE_SHARED_FROM_THIS);
}
catch(const Ice::LocalException& ex)
{
@@ -1062,7 +1122,11 @@ IceInternal::OutgoingConnectionFactory::ConnectCallback::removeConnectors(const
void
IceInternal::OutgoingConnectionFactory::ConnectCallback::removeFromPending()
{
+#ifdef ICE_CPP11_MAPPING
+ _factory->removeFromPending(dynamic_pointer_cast<ConnectCallback>(shared_from_this()), _connectors);
+#else
_factory->removeFromPending(this, _connectors);
+#endif
}
bool
@@ -1345,8 +1409,8 @@ IceInternal::IncomingConnectionFactory::message(ThreadPoolCurrent& current)
try
{
- connection = new ConnectionI(_adapter->getCommunicator(), _instance, _monitor, transceiver, 0, _endpoint,
- _adapter);
+ connection = ConnectionI::create(_adapter->getCommunicator(), _instance, _monitor, transceiver, 0,
+ _endpoint, _adapter);
}
catch(const LocalException& ex)
{
@@ -1371,7 +1435,11 @@ IceInternal::IncomingConnectionFactory::message(ThreadPoolCurrent& current)
}
assert(connection);
+#ifdef ICE_CPP11_MAPPING
+ connection->start(dynamic_pointer_cast<IncomingConnectionFactory>(shared_from_this()));
+#else
connection->start(this);
+#endif
}
void
@@ -1545,7 +1613,6 @@ IceInternal::IncomingConnectionFactory::initialize()
{
_endpoint = _endpoint->compress(_instance->defaultsAndOverrides()->overrideCompressValue);
}
-
try
{
const_cast<TransceiverPtr&>(_transceiver) = _endpoint->transceiver();
@@ -1557,9 +1624,8 @@ IceInternal::IncomingConnectionFactory::initialize()
out << "attempting to bind to " << _endpoint->protocol() << " socket\n" << _transceiver->toString();
}
const_cast<EndpointIPtr&>(_endpoint) = _transceiver->bind();
-
- ConnectionIPtr connection = new ConnectionI(_adapter->getCommunicator(), _instance, 0, _transceiver, 0,
- _endpoint, _adapter);
+ ConnectionIPtr connection(ConnectionI::create(_adapter->getCommunicator(), _instance, 0, _transceiver, 0,
+ _endpoint, _adapter));
connection->start(0);
_connections.insert(connection);
}
@@ -1627,7 +1693,12 @@ IceInternal::IncomingConnectionFactory::setState(State state)
Trace out(_instance->initializationData().logger, _instance->traceLevels()->networkCat);
out << "accepting " << _endpoint->protocol() << " connections at " << _acceptor->toString();
}
+#ifdef ICE_CPP11_MAPPING
+ _adapter->getThreadPool()->_register(dynamic_pointer_cast<EventHandler>(shared_from_this()),
+ SocketOperationRead);
+#else
_adapter->getThreadPool()->_register(this, SocketOperationRead);
+#endif
}
for_each(_connections.begin(), _connections.end(), Ice::voidMemFun(&ConnectionI::activate));
break;
@@ -1646,7 +1717,12 @@ IceInternal::IncomingConnectionFactory::setState(State state)
Trace out(_instance->initializationData().logger, _instance->traceLevels()->networkCat);
out << "holding " << _endpoint->protocol() << " connections at " << _acceptor->toString();
}
+#ifdef ICE_CPP11_MAPPING
+ _adapter->getThreadPool()->unregister(dynamic_pointer_cast<EventHandler>(shared_from_this()),
+ SocketOperationRead);
+#else
_adapter->getThreadPool()->unregister(this, SocketOperationRead);
+#endif
}
for_each(_connections.begin(), _connections.end(), Ice::voidMemFun(&ConnectionI::hold));
break;
@@ -1663,7 +1739,11 @@ IceInternal::IncomingConnectionFactory::setState(State state)
// the finish() call. Not all selector implementations do support this
// however.
//
+#ifdef ICE_CPP11_MAPPING
+ if(_adapter->getThreadPool()->finish(dynamic_pointer_cast<EventHandler>(shared_from_this()), true))
+#else
if(_adapter->getThreadPool()->finish(this, true))
+#endif
{
closeAcceptor();
}
@@ -1696,7 +1776,6 @@ IceInternal::IncomingConnectionFactory::createAcceptor()
{
_acceptor = _endpoint->acceptor(_adapter->getName());
assert(_acceptor);
-
if(_instance->traceLevels()->network >= 2)
{
Trace out(_instance->initializationData().logger, _instance->traceLevels()->networkCat);
@@ -1704,18 +1783,25 @@ IceInternal::IncomingConnectionFactory::createAcceptor()
}
_endpoint = _acceptor->listen();
-
if(_instance->traceLevels()->network >= 1)
{
Trace out(_instance->initializationData().logger, _instance->traceLevels()->networkCat);
out << "listening for " << _endpoint->protocol() << " connections\n" << _acceptor->toDetailedString();
}
+#ifdef ICE_CPP11_MAPPING
+ _adapter->getThreadPool()->initialize(dynamic_pointer_cast<EventHandler>(shared_from_this()));
+#else
_adapter->getThreadPool()->initialize(this);
-
+#endif
if(_state == StateActive)
{
+#ifdef ICE_CPP11_MAPPING
+ _adapter->getThreadPool()->_register(dynamic_pointer_cast<EventHandler>(shared_from_this()),
+ SocketOperationRead);
+#else
_adapter->getThreadPool()->_register(this, SocketOperationRead);
+#endif
}
}
catch(const Ice::Exception&)
diff --git a/cpp/src/Ice/ConnectionFactory.h b/cpp/src/Ice/ConnectionFactory.h
index bf211972ec8..433d5dbafe2 100644
--- a/cpp/src/Ice/ConnectionFactory.h
+++ b/cpp/src/Ice/ConnectionFactory.h
@@ -27,6 +27,7 @@
#include <Ice/EndpointI.h>
#include <Ice/InstrumentationF.h>
#include <Ice/ACMF.h>
+#include <Ice/Comparable.h>
#include <list>
#include <set>
@@ -36,7 +37,7 @@ namespace Ice
class LocalException;
class ObjectAdapterI;
-typedef IceUtil::Handle<ObjectAdapterI> ObjectAdapterIPtr;
+ICE_DEFINE_PTR(ObjectAdapterIPtr, ObjectAdapterI);
}
@@ -68,11 +69,11 @@ public:
void removeAdapter(const Ice::ObjectAdapterPtr&);
void flushAsyncBatchRequests(const CommunicatorFlushBatchAsyncPtr&);
-private:
-
OutgoingConnectionFactory(const Ice::CommunicatorPtr&, const InstancePtr&);
virtual ~OutgoingConnectionFactory();
friend class Instance;
+
+private:
struct ConnectorInfo
{
@@ -86,7 +87,11 @@ private:
EndpointIPtr endpoint;
};
- class ConnectCallback : public Ice::ConnectionI::StartCallback, public IceInternal::EndpointI_connectors
+ class ConnectCallback : public Ice::ConnectionI::StartCallback,
+ public IceInternal::EndpointI_connectors
+#ifdef ICE_CPP11_MAPPING
+ , public ::std::enable_shared_from_this<::IceInternal::OutgoingConnectionFactory::ConnectCallback>
+#endif
{
public:
@@ -127,7 +132,7 @@ private:
std::vector<ConnectorInfo> _connectors;
std::vector<ConnectorInfo>::const_iterator _iter;
};
- typedef IceUtil::Handle<ConnectCallback> ConnectCallbackPtr;
+ ICE_DEFINE_PTR(ConnectCallbackPtr, ConnectCallback);
friend class ConnectCallback;
std::vector<EndpointIPtr> applyOverrides(const std::vector<EndpointIPtr>&);
@@ -156,7 +161,11 @@ private:
std::multimap<ConnectorPtr, Ice::ConnectionIPtr> _connections;
std::map<ConnectorPtr, std::set<ConnectCallbackPtr> > _pending;
+#ifdef ICE_CPP11_MAPPING
+ std::multimap<EndpointIPtr, Ice::ConnectionIPtr, Ice::TargetLess<EndpointIPtr>> _connectionsByEndpoint;
+#else
std::multimap<EndpointIPtr, Ice::ConnectionIPtr> _connectionsByEndpoint;
+#endif
int _pendingConnectCount;
};
@@ -201,11 +210,12 @@ public:
virtual void connectionStartCompleted(const Ice::ConnectionIPtr&);
virtual void connectionStartFailed(const Ice::ConnectionIPtr&, const Ice::LocalException&);
-private:
-
IncomingConnectionFactory(const InstancePtr&, const EndpointIPtr&, const Ice::ObjectAdapterIPtr&);
void initialize();
virtual ~IncomingConnectionFactory();
+
+private:
+
friend class Ice::ObjectAdapterI;
enum State
diff --git a/cpp/src/Ice/ConnectionI.cpp b/cpp/src/Ice/ConnectionI.cpp
index 4a078bcc1f8..a824fbf0107 100644
--- a/cpp/src/Ice/ConnectionI.cpp
+++ b/cpp/src/Ice/ConnectionI.cpp
@@ -38,7 +38,9 @@ using namespace Ice;
using namespace Ice::Instrumentation;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
Ice::LocalObject* Ice::upCast(ConnectionI* p) { return p; }
+#endif
namespace
{
@@ -353,7 +355,12 @@ Ice::ConnectionI::start(const StartCallbackPtr& callback)
exception(ex);
if(callback)
{
+#ifdef ICE_CPP11_MAPPING
+ callback->connectionStartFailed(dynamic_pointer_cast<ConnectionI>(shared_from_this()),
+ *_exception.get());
+#else
callback->connectionStartFailed(this, *_exception.get());
+#endif
return;
}
else
@@ -365,7 +372,11 @@ Ice::ConnectionI::start(const StartCallbackPtr& callback)
if(callback)
{
+#ifdef ICE_CPP11_MAPPING
+ callback->connectionStartCompleted(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
callback->connectionStartCompleted(this);
+#endif
}
}
@@ -725,8 +736,11 @@ Ice::ConnectionI::sendAsyncRequest(const OutgoingAsyncBasePtr& out, bool compres
// Notify the request that it's cancelable with this connection.
// This will throw if the request is canceled.
//
+#ifdef ICE_CPP11_MAPPING
+ out->cancelable(dynamic_pointer_cast<CancellationHandler>(shared_from_this()));
+#else
out->cancelable(this);
-
+#endif
Int requestId = 0;
if(response)
{
@@ -799,6 +813,81 @@ Ice::ConnectionI::flushBatchRequests()
out.invoke();
}
+#ifdef ICE_CPP11_MAPPING
+function<void ()>
+Ice::ConnectionI::flushBatchRequests_async(function<void ()>, function<void (exception_ptr)> exception,
+ function<void (bool)> sent)
+{
+ class FlushBatchRequestsCallback : public CallbackBase
+ {
+ public:
+
+ FlushBatchRequestsCallback(function<void (exception_ptr)> exception,
+ function<void (bool)> sent,
+ shared_ptr<Connection> connection) :
+ _exception(move(exception)),
+ _sent(move(sent)),
+ _connection(move(connection))
+ {
+ }
+
+ virtual void sent(const AsyncResultPtr& result) const
+ {
+ try
+ {
+ AsyncResult::__check(result, _connection.get(), __flushBatchRequests_name);
+ result->__wait();
+ }
+ catch(const ::Ice::Exception&)
+ {
+ _exception(current_exception());
+ }
+
+ if(_sent)
+ {
+ _sent(result->sentSynchronously());
+ }
+ }
+
+ virtual bool hasSentCallback() const
+ {
+ return true;
+ }
+
+
+ virtual void
+ completed(const ::Ice::AsyncResultPtr& result) const
+ {
+ try
+ {
+ AsyncResult::__check(result, _connection.get(), __flushBatchRequests_name);
+ result->__wait();
+ }
+ catch(const ::Ice::Exception&)
+ {
+ _exception(current_exception());
+ }
+ }
+
+ private:
+
+ function<void (exception_ptr)> _exception;
+ function<void (bool)> _sent;
+ shared_ptr<Connection> _connection;
+ };
+
+ auto self = dynamic_pointer_cast<ConnectionI>(shared_from_this());
+
+ auto result = make_shared<ConnectionFlushBatchAsync>(self, _communicator, _instance, __flushBatchRequests_name,
+ make_shared<FlushBatchRequestsCallback>(move(exception), move(sent), self));
+ result->invoke();
+ return [result]()
+ {
+ result->cancel();
+ };
+}
+#else
+
AsyncResultPtr
Ice::ConnectionI::begin_flushBatchRequests()
{
@@ -822,7 +911,7 @@ AsyncResultPtr
Ice::ConnectionI::begin_flushBatchRequests(const IceInternal::Function<void (const Exception&)>& exception,
const IceInternal::Function<void (bool)>& sent)
{
-#ifdef ICE_CPP11
+#ifdef ICE_CPP11_COMPILER
class Cpp11CB : public IceInternal::Cpp11FnCallbackNC
{
public:
@@ -851,7 +940,7 @@ Ice::ConnectionI::begin_flushBatchRequests(const IceInternal::Function<void (con
}
};
- return __begin_flushBatchRequests(new Cpp11CB(exception, sent), 0);
+ return __begin_flushBatchRequests(ICE_MAKE_SHARED(Cpp11CB, exception, sent), 0);
#else
assert(false); // Ice not built with C++11 support.
return 0;
@@ -861,12 +950,17 @@ Ice::ConnectionI::begin_flushBatchRequests(const IceInternal::Function<void (con
AsyncResultPtr
Ice::ConnectionI::__begin_flushBatchRequests(const CallbackBasePtr& cb, const LocalObjectPtr& cookie)
{
- ConnectionFlushBatchAsyncPtr result = new ConnectionFlushBatchAsync(this,
- _communicator,
- _instance,
- __flushBatchRequests_name,
- cb,
- cookie);
+ ConnectionFlushBatchAsyncPtr result = new ConnectionFlushBatchAsync(
+#ifdef ICE_CPP11_MAPPING
+ dynamic_pointer_cast<EventHandler>(shared_from_this()),
+#else
+ this,
+#endif
+ _communicator,
+ _instance,
+ __flushBatchRequests_name,
+ cb,
+ cookie);
result->invoke();
return result;
}
@@ -877,6 +971,7 @@ Ice::ConnectionI::end_flushBatchRequests(const AsyncResultPtr& r)
AsyncResult::__check(r, this, __flushBatchRequests_name);
r->__wait();
}
+#endif
void
Ice::ConnectionI::setCallback(const ConnectionCallbackPtr& callback)
@@ -907,7 +1002,11 @@ Ice::ConnectionI::setCallback(const ConnectionCallbackPtr& callback)
const ConnectionIPtr _connection;
const ConnectionCallbackPtr _callback;
};
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->dispatch(new CallbackWorkItem(dynamic_pointer_cast<ConnectionI>(shared_from_this()), callback));
+#else
_threadPool->dispatch(new CallbackWorkItem(this, callback));
+#endif
}
}
else
@@ -922,7 +1021,11 @@ Ice::ConnectionI::closeCallback(const ConnectionCallbackPtr& callback)
{
try
{
+#ifdef ICE_CPP11_MAPPING
+ callback->closed(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
callback->closed(this);
+#endif
}
catch(const std::exception& ex)
{
@@ -949,7 +1052,11 @@ Ice::ConnectionI::setACM(const IceUtil::Optional<int>& timeout,
if(_state == StateActive)
{
+#ifdef ICE_CPP11_MAPPING
+ _monitor->remove(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
_monitor->remove(this);
+#endif
}
_monitor = _monitor->acm(timeout, close, heartbeat);
@@ -964,7 +1071,11 @@ Ice::ConnectionI::setACM(const IceUtil::Optional<int>& timeout,
if(_state == StateActive)
{
+#ifdef ICE_CPP11_MAPPING
+ _monitor->add(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
_monitor->add(this);
+#endif
}
}
@@ -1089,7 +1200,7 @@ Ice::ConnectionI::asyncRequestCanceled(const OutgoingAsyncBasePtr& outAsync, con
if(o->requestId)
{
if(_asyncRequestsHint != _asyncRequests.end() &&
- _asyncRequestsHint->second == OutgoingAsyncPtr::dynamicCast(outAsync))
+ _asyncRequestsHint->second == ICE_DYNAMIC_CAST(OutgoingAsync, outAsync))
{
_asyncRequests.erase(_asyncRequestsHint);
_asyncRequestsHint = _asyncRequests.end();
@@ -1128,7 +1239,7 @@ Ice::ConnectionI::asyncRequestCanceled(const OutgoingAsyncBasePtr& outAsync, con
}
}
- if(OutgoingAsyncPtr::dynamicCast(outAsync))
+ if(ICE_DYNAMIC_CAST(OutgoingAsync, outAsync))
{
if(_asyncRequestsHint != _asyncRequests.end())
{
@@ -1335,14 +1446,19 @@ Ice::ConnectionI::getEndpoint() const
return _endpoint; // No mutex protection necessary, _endpoint is immutable.
}
-ObjectPrx
+ObjectPrxPtr
Ice::ConnectionI::createProxy(const Identity& ident) const
{
//
// Create a reference and return a reverse proxy for this
// reference.
//
- ConnectionIPtr self = const_cast<ConnectionI*>(this);
+ ConnectionIPtr self =
+#ifdef ICE_CPP11_MAPPING
+ dynamic_pointer_cast<ConnectionI>(const_pointer_cast<VirtualShared>(shared_from_this()));
+#else
+ const_cast<ConnectionI*>(this);
+#endif
return _instance->proxyFactory()->referenceToProxy(_instance->referenceFactory()->create(ident, self));
}
@@ -1461,7 +1577,6 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
int dispatchCount = 0;
ThreadPoolMessage<ConnectionI> msg(current, *this);
-
{
IceUtil::Monitor<IceUtil::Mutex>::Lock sync(*this);
@@ -1593,7 +1708,12 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
// satisfied before continuing.
//
scheduleTimeout(newOp);
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->update(dynamic_pointer_cast<EventHandler>(shared_from_this()),
+ current.operation, newOp);
+#else
_threadPool->update(this, current.operation, newOp);
+#endif
return;
}
@@ -1607,7 +1727,12 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
return;
}
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->unregister(dynamic_pointer_cast<EventHandler>(shared_from_this()),
+ current.operation);
+#else
_threadPool->unregister(this, current.operation);
+#endif
//
// We start out in holding state.
@@ -1655,7 +1780,12 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
if(_state < StateClosed)
{
scheduleTimeout(newOp);
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->update(dynamic_pointer_cast<EventHandler>(shared_from_this()), current.operation,
+ newOp);
+#else
_threadPool->update(this, current.operation, newOp);
+#endif
}
}
@@ -1717,9 +1847,15 @@ Ice::ConnectionI::message(ThreadPoolCurrent& current)
}
else
{
- _threadPool->dispatchFromThisThread(new DispatchCall(this, startCB, sentCBs, compress, requestId, invokeNum,
- servantManager, adapter, outAsync, heartbeatCallback,
- current.stream));
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->dispatchFromThisThread(new DispatchCall(dynamic_pointer_cast<ConnectionI>(shared_from_this()),
+ startCB, sentCBs, compress, requestId, invokeNum, servantManager, adapter, outAsync, heartbeatCallback,
+ current.stream));
+#else
+ _threadPool->dispatchFromThisThread(new DispatchCall(this, startCB, sentCBs, compress, requestId,
+ invokeNum, servantManager, adapter, outAsync, heartbeatCallback, current.stream));
+#endif
+
}
}
@@ -1737,7 +1873,12 @@ ConnectionI::dispatch(const StartCallbackPtr& startCB, const vector<OutgoingMess
//
if(startCB)
{
+
+#ifdef ICE_CPP11_MAPPING
+ startCB->connectionStartCompleted(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
startCB->connectionStartCompleted(this);
+#endif
++dispatchedCount;
}
@@ -1755,7 +1896,7 @@ ConnectionI::dispatch(const StartCallbackPtr& startCB, const vector<OutgoingMess
}
if(p->receivedReply)
{
- OutgoingAsyncPtr outAsync = OutgoingAsyncPtr::dynamicCast(p->outAsync);
+ OutgoingAsyncPtr outAsync = ICE_DYNAMIC_CAST(OutgoingAsync, p->outAsync);
if(outAsync->completed())
{
outAsync->invokeCompleted();
@@ -1782,7 +1923,11 @@ ConnectionI::dispatch(const StartCallbackPtr& startCB, const vector<OutgoingMess
{
try
{
+#ifdef ICE_CPP11_MAPPING
+ heartbeatCallback->heartbeat(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
heartbeatCallback->heartbeat(this);
+#endif
}
catch(const std::exception& ex)
{
@@ -1874,7 +2019,12 @@ Ice::ConnectionI::finished(ThreadPoolCurrent& current, bool close)
}
else
{
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->dispatchFromThisThread(new FinishCall(
+ dynamic_pointer_cast<ConnectionI>(shared_from_this()), close));
+#else
_threadPool->dispatchFromThisThread(new FinishCall(this, close));
+#endif
}
}
@@ -1919,7 +2069,12 @@ Ice::ConnectionI::finish(bool close)
if(_startCallback)
{
+#ifdef ICE_CPP11_MAPPING
+ _startCallback->connectionStartFailed(
+ dynamic_pointer_cast<ConnectionI>(shared_from_this()), *_exception.get());
+#else
_startCallback->connectionStartFailed(this, *_exception.get());
+#endif
_startCallback = 0;
}
@@ -1948,7 +2103,7 @@ Ice::ConnectionI::finish(bool close)
}
if(message->receivedReply)
{
- OutgoingAsyncPtr outAsync = OutgoingAsyncPtr::dynamicCast(message->outAsync);
+ OutgoingAsyncPtr outAsync = ICE_DYNAMIC_CAST(OutgoingAsync, message->outAsync);
if(outAsync->completed())
{
outAsync->invokeCompleted();
@@ -2156,26 +2311,29 @@ Ice::ConnectionI::ConnectionI(const CommunicatorPtr& communicator,
{
_acmLastActivity = IceUtil::Time::now(IceUtil::Time::Monotonic);
}
+}
- __setNoDelete(true);
- try
+Ice::ConnectionIPtr
+Ice::ConnectionI::create(const CommunicatorPtr& communicator,
+ const InstancePtr& instance,
+ const ACMMonitorPtr& monitor,
+ const TransceiverPtr& transceiver,
+ const ConnectorPtr& connector,
+ const EndpointIPtr& endpoint,
+ const ObjectAdapterIPtr& adapter)
+{
+ Ice::ConnectionIPtr conn(new ConnectionI(communicator, instance, monitor, transceiver, connector,
+ endpoint, adapter));
+ if(adapter)
{
- if(adapter)
- {
- const_cast<ThreadPoolPtr&>(_threadPool) = adapter->getThreadPool();
- }
- else
- {
- const_cast<ThreadPoolPtr&>(_threadPool) = _instance->clientThreadPool();
- }
- _threadPool->initialize(this);
+ const_cast<ThreadPoolPtr&>(conn->_threadPool) = adapter->getThreadPool();
}
- catch(const IceUtil::Exception&)
+ else
{
- __setNoDelete(false);
- throw;
+ const_cast<ThreadPoolPtr&>(conn->_threadPool) = conn->_instance->clientThreadPool();
}
- __setNoDelete(false);
+ conn->_threadPool->initialize(conn);
+ return conn;
}
Ice::ConnectionI::~ConnectionI()
@@ -2296,7 +2454,12 @@ Ice::ConnectionI::setState(State state)
{
return;
}
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->_register(dynamic_pointer_cast<EventHandler>(shared_from_this()),
+ SocketOperationRead);
+#else
_threadPool->_register(this, SocketOperationRead);
+#endif
break;
}
@@ -2312,7 +2475,12 @@ Ice::ConnectionI::setState(State state)
}
if(_state == StateActive)
{
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->unregister(dynamic_pointer_cast<EventHandler>(shared_from_this()),
+ SocketOperationRead);
+#else
_threadPool->unregister(this, SocketOperationRead);
+#endif
}
break;
}
@@ -2343,7 +2511,11 @@ Ice::ConnectionI::setState(State state)
// Don't need to close now for connections so only close the transceiver
// if the selector request it.
//
+#ifdef ICE_CPP11_MAPPING
+ if(_threadPool->finish(dynamic_pointer_cast<EventHandler>(shared_from_this()), false))
+#else
if(_threadPool->finish(this, false))
+#endif
{
_transceiver->close();
}
@@ -2378,11 +2550,19 @@ Ice::ConnectionI::setState(State state)
{
_acmLastActivity = IceUtil::Time::now(IceUtil::Time::Monotonic);
}
+#ifdef ICE_CPP11_MAPPING
+ _monitor->add(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
_monitor->add(this);
+#endif
}
else if(_state == StateActive)
{
+#ifdef ICE_CPP11_MAPPING
+ _monitor->remove(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
_monitor->remove(this);
+#endif
}
}
@@ -2467,7 +2647,11 @@ Ice::ConnectionI::initiateShutdown()
if(op)
{
scheduleTimeout(op);
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->_register(dynamic_pointer_cast<EventHandler>(shared_from_this()), op);
+#else
_threadPool->_register(this, op);
+#endif
}
}
}
@@ -2511,7 +2695,11 @@ Ice::ConnectionI::initialize(SocketOperation operation)
if(s != SocketOperationNone)
{
scheduleTimeout(s);
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->update(dynamic_pointer_cast<EventHandler>(shared_from_this()), operation, s);
+#else
_threadPool->update(this, operation, s);
+#endif
return false;
}
@@ -2557,7 +2745,11 @@ Ice::ConnectionI::validate(SocketOperation operation)
if(op)
{
scheduleTimeout(op);
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->update(dynamic_pointer_cast<EventHandler>(shared_from_this()), operation, op);
+#else
_threadPool->update(this, operation, op);
+#endif
return false;
}
}
@@ -2586,7 +2778,11 @@ Ice::ConnectionI::validate(SocketOperation operation)
if(op)
{
scheduleTimeout(op);
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->update(dynamic_pointer_cast<EventHandler>(shared_from_this()), operation, op);
+#else
_threadPool->update(this, operation, op);
+#endif
return false;
}
}
@@ -2964,7 +3160,11 @@ Ice::ConnectionI::sendMessage(OutgoingMessage& message)
_writeStream.swap(*_sendStreams.back().stream);
scheduleTimeout(op);
+#ifdef ICE_CPP11_MAPPING
+ _threadPool->_register(dynamic_pointer_cast<EventHandler>(shared_from_this()), op);
+#else
_threadPool->_register(this, op);
+#endif
return AsyncStatusQueued;
}
@@ -3520,7 +3720,7 @@ Ice::ConnectionI::initConnectionInfo() const
}
catch(const Ice::LocalException&)
{
- _info = new ConnectionInfo();
+ _info = ICE_MAKE_SHARED(ConnectionInfo);
}
_info->connectionId = _endpoint->connectionId();
_info->incoming = _connector == 0;
@@ -3579,7 +3779,11 @@ ConnectionI::reap()
{
if(_monitor)
{
+#ifdef ICE_CPP11_MAPPING
+ _monitor->reap(dynamic_pointer_cast<ConnectionI>(shared_from_this()));
+#else
_monitor->reap(this);
+#endif
}
if(_observer)
{
diff --git a/cpp/src/Ice/ConnectionI.h b/cpp/src/Ice/ConnectionI.h
index fdb80901122..c3b4c270311 100644
--- a/cpp/src/Ice/ConnectionI.h
+++ b/cpp/src/Ice/ConnectionI.h
@@ -60,7 +60,7 @@ namespace Ice
class LocalException;
class ObjectAdapterI;
-typedef IceUtil::Handle<ObjectAdapterI> ObjectAdapterIPtr;
+ICE_DEFINE_PTR(ObjectAdapterIPtr, ObjectAdapterI);
class ConnectionI : public Connection,
public IceInternal::EventHandler,
@@ -134,6 +134,17 @@ public:
#endif
};
+
+#ifdef ICE_CPP11_MAPPING
+ class StartCallback
+ {
+ public:
+
+ virtual void connectionStartCompleted(const ConnectionIPtr&) = 0;
+ virtual void connectionStartFailed(const ConnectionIPtr&, const Ice::LocalException&) = 0;
+ };
+ typedef ::std::shared_ptr<StartCallback> StartCallbackPtr;
+#else
class StartCallback : virtual public IceUtil::Shared
{
public:
@@ -142,7 +153,8 @@ public:
virtual void connectionStartFailed(const ConnectionIPtr&, const Ice::LocalException&) = 0;
};
typedef IceUtil::Handle<StartCallback> StartCallbackPtr;
-
+#endif
+
enum DestructionReason
{
ObjectAdapterDeactivated,
@@ -174,16 +186,22 @@ public:
virtual void flushBatchRequests(); // From Connection.
+#ifdef ICE_CPP11_MAPPING
+ virtual std::function<void ()>
+ flushBatchRequests_async(::std::function<void ()> completed,
+ ::std::function<void (::std::exception_ptr)> exception = nullptr,
+ ::std::function<void (bool)> sent = nullptr);
+#else
virtual AsyncResultPtr begin_flushBatchRequests();
virtual AsyncResultPtr begin_flushBatchRequests(const CallbackPtr&, const LocalObjectPtr& = 0);
virtual AsyncResultPtr begin_flushBatchRequests(const Callback_Connection_flushBatchRequestsPtr&,
const LocalObjectPtr& = 0);
-
virtual AsyncResultPtr begin_flushBatchRequests(
const ::IceInternal::Function<void (const ::Ice::Exception&)>&,
const ::IceInternal::Function<void (bool)>& = ::IceInternal::Function<void (bool)>());
virtual void end_flushBatchRequests(const AsyncResultPtr&);
+#endif
virtual void setCallback(const ConnectionCallbackPtr&);
virtual void setACM(const IceUtil::Optional<int>&,
@@ -205,7 +223,7 @@ public:
virtual void setAdapter(const ObjectAdapterPtr&); // From Connection.
virtual ObjectAdapterPtr getAdapter() const; // From Connection.
virtual EndpointPtr getEndpoint() const; // From Connection.
- virtual ObjectPrx createProxy(const Identity& ident) const; // From Connection.
+ virtual ObjectPrxPtr createProxy(const Identity& ident) const; // From Connection.
//
// Operations from EventHandler
@@ -238,8 +256,20 @@ public:
void closeCallback(const ConnectionCallbackPtr&);
+
+ virtual ~ConnectionI();
+
private:
+ ConnectionI(const Ice::CommunicatorPtr&, const IceInternal::InstancePtr&, const IceInternal::ACMMonitorPtr&,
+ const IceInternal::TransceiverPtr&, const IceInternal::ConnectorPtr&,
+ const IceInternal::EndpointIPtr&, const ObjectAdapterIPtr&);
+
+ static ConnectionIPtr
+ create(const Ice::CommunicatorPtr&, const IceInternal::InstancePtr&, const IceInternal::ACMMonitorPtr&,
+ const IceInternal::TransceiverPtr&, const IceInternal::ConnectorPtr&,
+ const IceInternal::EndpointIPtr&, const ObjectAdapterIPtr&);
+
enum State
{
StateNotInitialized,
@@ -252,11 +282,6 @@ private:
StateFinished
};
- ConnectionI(const Ice::CommunicatorPtr&, const IceInternal::InstancePtr&, const IceInternal::ACMMonitorPtr&,
- const IceInternal::TransceiverPtr&, const IceInternal::ConnectorPtr&,
- const IceInternal::EndpointIPtr&, const ObjectAdapterIPtr&);
- virtual ~ConnectionI();
-
friend class IceInternal::IncomingConnectionFactory;
friend class IceInternal::OutgoingConnectionFactory;
diff --git a/cpp/src/Ice/ConnectionRequestHandler.cpp b/cpp/src/Ice/ConnectionRequestHandler.cpp
index cab544915e6..62bcebb111c 100644
--- a/cpp/src/Ice/ConnectionRequestHandler.cpp
+++ b/cpp/src/Ice/ConnectionRequestHandler.cpp
@@ -51,7 +51,7 @@ ConnectionRequestHandler::update(const RequestHandlerPtr& previousHandler, const
{
// Ignore.
}
- return this;
+ return ICE_SHARED_FROM_THIS;
}
bool
diff --git a/cpp/src/Ice/ConnectionRequestHandler.h b/cpp/src/Ice/ConnectionRequestHandler.h
index cef3df68f4d..29f70063768 100644
--- a/cpp/src/Ice/ConnectionRequestHandler.h
+++ b/cpp/src/Ice/ConnectionRequestHandler.h
@@ -17,7 +17,8 @@
namespace IceInternal
{
-class ConnectionRequestHandler : public RequestHandler
+class ConnectionRequestHandler : public RequestHandler,
+ public ICE_ENABLE_SHARED_FROM_THIS(ConnectionRequestHandler)
{
public:
diff --git a/cpp/src/Ice/DynamicLibrary.cpp b/cpp/src/Ice/DynamicLibrary.cpp
index aaf5a101e67..fc13d9188d7 100644
--- a/cpp/src/Ice/DynamicLibrary.cpp
+++ b/cpp/src/Ice/DynamicLibrary.cpp
@@ -89,7 +89,7 @@ IceInternal::DynamicLibrary::loadEntryPoint(const string& entryPoint, bool useIc
if(comma == string::npos)
{
libName = libSpec;
-# if defined(ICE_CPP11) && defined(__GLIBCXX__)
+# if defined(ICE_CPP11_COMPILER) && defined(__GLIBCXX__)
libName += "++11";
# endif
if(useIceVersion)
@@ -119,7 +119,7 @@ IceInternal::DynamicLibrary::loadEntryPoint(const string& entryPoint, bool useIc
return 0;
}
libName = libSpec.substr(0, comma);
-# if defined(ICE_CPP11) && defined(__GLIBCXX__)
+# if defined(ICE_CPP11_COMPILER) && defined(__GLIBCXX__)
libName += "++11";
# endif
version = libSpec.substr(comma + 1);
diff --git a/cpp/src/Ice/EndpointFactoryManager.cpp b/cpp/src/Ice/EndpointFactoryManager.cpp
index 25487819338..6830eda8521 100644
--- a/cpp/src/Ice/EndpointFactoryManager.cpp
+++ b/cpp/src/Ice/EndpointFactoryManager.cpp
@@ -140,7 +140,7 @@ IceInternal::EndpointFactoryManager::create(const string& str, bool oaEndpoint)
//
if(protocol == "opaque")
{
- EndpointIPtr ue = new OpaqueEndpointI(v);
+ EndpointIPtr ue = ICE_MAKE_SHARED(OpaqueEndpointI, v);
if(!v.empty())
{
EndpointParseException ex(__FILE__, __LINE__);
@@ -189,7 +189,7 @@ IceInternal::EndpointFactoryManager::read(BasicStream* s) const
}
else
{
- e = new OpaqueEndpointI(type, s);
+ e = ICE_MAKE_SHARED(OpaqueEndpointI, type, s);
}
s->endReadEncaps();
diff --git a/cpp/src/Ice/EndpointI.cpp b/cpp/src/Ice/EndpointI.cpp
index bb967ab0e26..073b9049549 100644
--- a/cpp/src/Ice/EndpointI.cpp
+++ b/cpp/src/Ice/EndpointI.cpp
@@ -11,8 +11,10 @@
using namespace std;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(EndpointI* p) { return p; }
IceUtil::Shared* IceInternal::upCast(EndpointI_connectors* p) { return p; }
+#endif
string
IceInternal::EndpointI::toString() const
diff --git a/cpp/src/Ice/EndpointI.h b/cpp/src/Ice/EndpointI.h
index df41372bd82..6000f706bdb 100644
--- a/cpp/src/Ice/EndpointI.h
+++ b/cpp/src/Ice/EndpointI.h
@@ -22,7 +22,10 @@ namespace IceInternal
class BasicStream;
-class ICE_API EndpointI_connectors : public virtual IceUtil::Shared
+class ICE_API EndpointI_connectors
+#ifndef ICE_CPP11_MAPPING
+ : public virtual IceUtil::Shared
+#endif
{
public:
@@ -32,7 +35,8 @@ public:
virtual void exception(const Ice::LocalException&) = 0;
};
-class ICE_API EndpointI : public Ice::Endpoint
+class ICE_API EndpointI : public Ice::Endpoint,
+ public ICE_ENABLE_SHARED_FROM_THIS(EndpointI)
{
public:
@@ -131,8 +135,13 @@ public:
//
// Compare endpoints for sorting purposes.
//
+#ifdef ICE_CPP11_MAPPING
+ virtual bool operator==(const EndpointI&) const = 0;
+ virtual bool operator<(const EndpointI&) const = 0;
+#else
virtual bool operator==(const Ice::LocalObject&) const = 0;
virtual bool operator<(const Ice::LocalObject&) const = 0;
+#endif
virtual ::Ice::Int hash() const = 0;
@@ -150,6 +159,7 @@ protected:
};
+#ifndef ICE_CPP11_MAPPING
inline bool operator==(const EndpointI& l, const EndpointI& r)
{
return static_cast<const ::Ice::LocalObject&>(l) == static_cast<const ::Ice::LocalObject&>(r);
@@ -159,6 +169,7 @@ inline bool operator<(const EndpointI& l, const EndpointI& r)
{
return static_cast<const ::Ice::LocalObject&>(l) < static_cast<const ::Ice::LocalObject&>(r);
}
+#endif
template<typename T> class InfoI : public T
{
diff --git a/cpp/src/Ice/EndpointIF.h b/cpp/src/Ice/EndpointIF.h
index b851a8871b9..47959d98c28 100644
--- a/cpp/src/Ice/EndpointIF.h
+++ b/cpp/src/Ice/EndpointIF.h
@@ -17,25 +17,38 @@ namespace IceInternal
{
class EndpointI;
+class TcpEndpointI;
+class UdpEndpointI;
+class WSEndpoint;
+class EndpointI_connectors;
+
+#ifdef ICE_CPP11_MAPPING // C++11 mapping
+
+typedef ::std::shared_ptr<EndpointI> EndpointIPtr;
+typedef ::std::shared_ptr<TcpEndpointI> TcpEndpointIPtr;
+typedef ::std::shared_ptr<UdpEndpointI> UdpEndpointIPtr;
+typedef ::std::shared_ptr<WSEndpoint> WSEndpointPtr;
+typedef ::std::shared_ptr<EndpointI_connectors> EndpointI_connectorsPtr;
+
+#else // C++98 mapping
+
ICE_API IceUtil::Shared* upCast(EndpointI*);
typedef Handle<EndpointI> EndpointIPtr;
-class TcpEndpointI;
ICE_API IceUtil::Shared* upCast(TcpEndpointI*);
typedef Handle<TcpEndpointI> TcpEndpointIPtr;
-class UdpEndpointI;
ICE_API IceUtil::Shared* upCast(UdpEndpointI*);
typedef Handle<UdpEndpointI> UdpEndpointIPtr;
-class WSEndpoint;
ICE_API IceUtil::Shared* upCast(WSEndpoint*);
typedef Handle<WSEndpoint> WSEndpointPtr;
-class EndpointI_connectors;
ICE_API IceUtil::Shared* upCast(EndpointI_connectors*);
typedef Handle<EndpointI_connectors> EndpointI_connectorsPtr;
+#endif
+
}
#endif
diff --git a/cpp/src/Ice/EventHandler.cpp b/cpp/src/Ice/EventHandler.cpp
index 6edea2d9307..ffa7f218c92 100644
--- a/cpp/src/Ice/EventHandler.cpp
+++ b/cpp/src/Ice/EventHandler.cpp
@@ -14,7 +14,9 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(EventHandler* p) { return p; }
+#endif
IceInternal::EventHandler::EventHandler() :
#if defined(ICE_USE_IOCP) || defined(ICE_OS_WINRT)
diff --git a/cpp/src/Ice/EventHandler.h b/cpp/src/Ice/EventHandler.h
index a47a1899d10..47e4473ca1b 100644
--- a/cpp/src/Ice/EventHandler.h
+++ b/cpp/src/Ice/EventHandler.h
@@ -16,11 +16,17 @@
#include <Ice/ThreadPoolF.h>
#include <Ice/BasicStream.h>
#include <Ice/Network.h>
+#include <Ice/VirtualShared.h>
namespace IceInternal
{
-class ICE_API EventHandler : virtual public ::Ice::LocalObject
+class ICE_API EventHandler :
+#ifdef ICE_CPP11_MAPPING
+ virtual public VirtualShared
+#else
+ virtual public ::Ice::LocalObject
+#endif
{
public:
diff --git a/cpp/src/Ice/EventHandlerF.h b/cpp/src/Ice/EventHandlerF.h
index e627e964c4d..878651e40db 100644
--- a/cpp/src/Ice/EventHandlerF.h
+++ b/cpp/src/Ice/EventHandlerF.h
@@ -18,9 +18,12 @@ namespace IceInternal
{
class EventHandler;
+#ifdef ICE_CPP11_MAPPING
+typedef ::std::shared_ptr<EventHandler> EventHandlerPtr;
+#else
ICE_API IceUtil::Shared* upCast(EventHandler*);
typedef Handle<EventHandler> EventHandlerPtr;
-
+#endif
}
#endif
diff --git a/cpp/src/Ice/Exception.cpp b/cpp/src/Ice/Exception.cpp
index 7efe9309ee9..d23255ef4ab 100644
--- a/cpp/src/Ice/Exception.cpp
+++ b/cpp/src/Ice/Exception.cpp
@@ -66,7 +66,7 @@ namespace Ex
{
void
-throwUOE(const string& expectedType, const ObjectPtr& v)
+throwUOE(const string& expectedType, const ValuePtr& v)
{
//
// If the object is an unknown sliced object, we didn't find an
diff --git a/cpp/src/Ice/FactoryTable.cpp b/cpp/src/Ice/FactoryTable.cpp
index aae6142bb3d..bc48ab8d6e9 100644
--- a/cpp/src/Ice/FactoryTable.cpp
+++ b/cpp/src/Ice/FactoryTable.cpp
@@ -10,12 +10,14 @@
#include <Ice/FactoryTable.h>
#include <Ice/ObjectFactory.h>
+using namespace std;
+
//
// Add a factory to the exception factory table.
// If the factory is present already, increment its reference count.
//
void
-IceInternal::FactoryTable::addExceptionFactory(const std::string& t, const IceInternal::UserExceptionFactoryPtr& f)
+IceInternal::FactoryTable::addExceptionFactory(const string& t, const IceInternal::UserExceptionFactoryPtr& f)
{
IceUtil::Mutex::Lock lock(_m);
assert(f);
@@ -34,7 +36,7 @@ IceInternal::FactoryTable::addExceptionFactory(const std::string& t, const IceIn
// Return the exception factory for a given type ID
//
IceInternal::UserExceptionFactoryPtr
-IceInternal::FactoryTable::getExceptionFactory(const std::string& t) const
+IceInternal::FactoryTable::getExceptionFactory(const string& t) const
{
IceUtil::Mutex::Lock lock(_m);
EFTable::const_iterator i = _eft.find(t);
@@ -48,7 +50,7 @@ IceInternal::FactoryTable::getExceptionFactory(const std::string& t) const
// entry from the table.
//
void
-IceInternal::FactoryTable::removeExceptionFactory(const std::string& t)
+IceInternal::FactoryTable::removeExceptionFactory(const string& t)
{
IceUtil::Mutex::Lock lock(_m);
EFTable::iterator i = _eft.find(t);
@@ -64,8 +66,13 @@ IceInternal::FactoryTable::removeExceptionFactory(const std::string& t)
//
// Add a factory to the object factory table.
//
+#ifdef ICE_CPP11_MAPPING
+void
+IceInternal::FactoryTable::addObjectFactory(const string& t, function<::Ice::ValuePtr (const string&)> f)
+#else
void
-IceInternal::FactoryTable::addObjectFactory(const std::string& t, const Ice::ObjectFactoryPtr& f)
+IceInternal::FactoryTable::addObjectFactory(const string& t, const ::Ice::ObjectFactoryPtr& f)
+#endif
{
IceUtil::Mutex::Lock lock(_m);
assert(f);
@@ -83,13 +90,23 @@ IceInternal::FactoryTable::addObjectFactory(const std::string& t, const Ice::Obj
//
// Return the object factory for a given type ID
//
+#ifdef ICE_CPP11_MAPPING
+function<Ice::ValuePtr(const string&)>
+IceInternal::FactoryTable::getObjectFactory(const string& t) const
+{
+ IceUtil::Mutex::Lock lock(_m);
+ OFTable::const_iterator i = _oft.find(t);
+ return i != _oft.end() ? i->second.first : nullptr;
+}
+#else
Ice::ObjectFactoryPtr
-IceInternal::FactoryTable::getObjectFactory(const std::string& t) const
+IceInternal::FactoryTable::getObjectFactory(const string& t) const
{
IceUtil::Mutex::Lock lock(_m);
OFTable::const_iterator i = _oft.find(t);
return i != _oft.end() ? i->second.first : Ice::ObjectFactoryPtr();
}
+#endif
//
// Remove a factory from the object factory table. If the factory
@@ -98,7 +115,7 @@ IceInternal::FactoryTable::getObjectFactory(const std::string& t) const
// entry from the table.
//
void
-IceInternal::FactoryTable::removeObjectFactory(const std::string& t)
+IceInternal::FactoryTable::removeObjectFactory(const string& t)
{
IceUtil::Mutex::Lock lock(_m);
OFTable::iterator i = _oft.find(t);
@@ -115,7 +132,7 @@ IceInternal::FactoryTable::removeObjectFactory(const std::string& t)
// Add a factory to the object factory table.
//
void
-IceInternal::FactoryTable::addTypeId(int compactId, const std::string& typeId)
+IceInternal::FactoryTable::addTypeId(int compactId, const string& typeId)
{
IceUtil::Mutex::Lock lock(_m);
assert(!typeId.empty() && compactId >= 0);
@@ -133,12 +150,12 @@ IceInternal::FactoryTable::addTypeId(int compactId, const std::string& typeId)
//
// Return the type ID for the given compact ID
//
-std::string
+string
IceInternal::FactoryTable::getTypeId(int compactId) const
{
IceUtil::Mutex::Lock lock(_m);
TypeIdTable::const_iterator i = _typeIdTable.find(compactId);
- return i != _typeIdTable.end() ? i->second.first : std::string();
+ return i != _typeIdTable.end() ? i->second.first : string();
}
void
diff --git a/cpp/src/Ice/GCObject.cpp b/cpp/src/Ice/GCObject.cpp
index 303116f8679..f5101ded9c9 100644
--- a/cpp/src/Ice/GCObject.cpp
+++ b/cpp/src/Ice/GCObject.cpp
@@ -9,6 +9,8 @@
#include <Ice/GCObject.h>
+#ifndef ICE_CPP11_MAPPING
+
#include <set>
#include <stack>
@@ -442,3 +444,4 @@ GCObject::collect(IceUtilInternal::MutexPtrLock<IceUtil::Mutex>& lock)
}
return true;
}
+#endif
diff --git a/cpp/src/Ice/IPEndpointI.cpp b/cpp/src/Ice/IPEndpointI.cpp
index 49c17dba4ad..74d274d8d77 100644
--- a/cpp/src/Ice/IPEndpointI.cpp
+++ b/cpp/src/Ice/IPEndpointI.cpp
@@ -46,7 +46,9 @@ Init init;
}
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(IPEndpointI* p) { return p; }
+#endif
IceUtil::Shared* IceInternal::upCast(EndpointHostResolver* p) { return p; }
IceInternal::IPEndpointInfoI::IPEndpointInfoI(const EndpointIPtr& endpoint) : _endpoint(endpoint)
@@ -78,7 +80,13 @@ IceInternal::IPEndpointInfoI::secure() const
Ice::EndpointInfoPtr
IceInternal::IPEndpointI::getInfo() const
{
- Ice::IPEndpointInfoPtr info = new IPEndpointInfoI(const_cast<IPEndpointI*>(this));
+ Ice::IPEndpointInfoPtr info
+#ifdef ICE_CPP11_MAPPING
+ = make_shared<IPEndpointInfoI>(
+ dynamic_pointer_cast<IPEndpointI>(const_pointer_cast<EndpointI>(shared_from_this())));
+#else
+ = new IPEndpointInfoI(const_cast<IPEndpointI*>(this));
+#endif
fillEndpointInfo(info.get());
return info;
}
@@ -121,7 +129,12 @@ IceInternal::IPEndpointI::connectionId(const string& connectionId) const
{
if(connectionId == _connectionId)
{
+#ifdef ICE_CPP11_MAPPING
+ return dynamic_pointer_cast<IPEndpointI>(
+ const_pointer_cast<EndpointI>(shared_from_this()));
+#else
return const_cast<IPEndpointI*>(this);
+#endif
}
else
{
@@ -144,7 +157,13 @@ IceInternal::IPEndpointI::port() const
void
IceInternal::IPEndpointI::connectors_async(Ice::EndpointSelectionType selType, const EndpointI_connectorsPtr& cb) const
{
- _instance->resolve(_host, _port, selType, const_cast<IPEndpointI*>(this), cb);
+ _instance->resolve(_host, _port, selType,
+#ifdef ICE_CPP11_MAPPING
+ dynamic_pointer_cast<IPEndpointI>(const_pointer_cast<EndpointI>(shared_from_this())),
+#else
+ const_cast<IPEndpointI*>(this),
+#endif
+ cb);
}
vector<EndpointIPtr>
@@ -154,7 +173,13 @@ IceInternal::IPEndpointI::expand() const
vector<string> hosts = getHostsForEndpointExpand(_host, _instance->protocolSupport(), false);
if(hosts.empty())
{
- endps.push_back(const_cast<IPEndpointI*>(this));
+ endps.push_back(
+#ifdef ICE_CPP11_MAPPING
+ dynamic_pointer_cast<IPEndpointI>(const_pointer_cast<EndpointI>(shared_from_this()))
+#else
+ const_cast<IPEndpointI*>(this)
+#endif
+ );
}
else
{
@@ -229,7 +254,11 @@ IceInternal::IPEndpointI::options() const
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::IPEndpointI::operator==(const EndpointI& r) const
+#else
IceInternal::IPEndpointI::operator==(const LocalObject& r) const
+#endif
{
const IPEndpointI* p = dynamic_cast<const IPEndpointI*>(&r);
if(!p)
@@ -261,12 +290,15 @@ IceInternal::IPEndpointI::operator==(const LocalObject& r) const
{
return false;
}
-
return true;
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::IPEndpointI::operator<(const EndpointI& r) const
+#else
IceInternal::IPEndpointI::operator<(const LocalObject& r) const
+#endif
{
const IPEndpointI* p = dynamic_cast<const IPEndpointI*>(&r);
if(!p)
diff --git a/cpp/src/Ice/IPEndpointI.h b/cpp/src/Ice/IPEndpointI.h
index 91263da5f39..396d25fdad8 100644
--- a/cpp/src/Ice/IPEndpointI.h
+++ b/cpp/src/Ice/IPEndpointI.h
@@ -62,8 +62,13 @@ public:
virtual ::Ice::Int hash() const;
virtual std::string options() const;
+#ifdef ICE_CPP11_MAPPING
+ virtual bool operator==(const EndpointI&) const;
+ virtual bool operator<(const EndpointI&) const;
+#else
virtual bool operator==(const Ice::LocalObject&) const;
virtual bool operator<(const Ice::LocalObject&) const;
+#endif
virtual std::vector<ConnectorPtr> connectors(const std::vector<Address>&, const NetworkProxyPtr&) const;
const std::string& host() const;
@@ -143,6 +148,7 @@ private:
#endif
};
+#ifndef ICE_CPP11_MAPPING
inline bool operator==(const IPEndpointI& l, const IPEndpointI& r)
{
return static_cast<const ::Ice::LocalObject&>(l) == static_cast<const ::Ice::LocalObject&>(r);
@@ -152,6 +158,7 @@ inline bool operator<(const IPEndpointI& l, const IPEndpointI& r)
{
return static_cast<const ::Ice::LocalObject&>(l) < static_cast<const ::Ice::LocalObject&>(r);
}
+#endif
}
diff --git a/cpp/src/Ice/IPEndpointIF.h b/cpp/src/Ice/IPEndpointIF.h
index aec4433cfc5..a092235c26e 100644
--- a/cpp/src/Ice/IPEndpointIF.h
+++ b/cpp/src/Ice/IPEndpointIF.h
@@ -17,13 +17,17 @@ namespace IceInternal
{
class IPEndpointI;
+
+#ifdef ICE_CPP11_MAPPING
+typedef ::std::shared_ptr<IPEndpointI> IPEndpointIPtr;
+#else
ICE_API IceUtil::Shared* upCast(IPEndpointI*);
typedef Handle<IPEndpointI> IPEndpointIPtr;
+#endif
class EndpointHostResolver;
ICE_API IceUtil::Shared* upCast(EndpointHostResolver*);
typedef Handle<EndpointHostResolver> EndpointHostResolverPtr;
-
}
#endif
diff --git a/cpp/src/Ice/ImplicitContextI.cpp b/cpp/src/Ice/ImplicitContextI.cpp
index 5af15c5eae3..a4d58f9e9b7 100644
--- a/cpp/src/Ice/ImplicitContextI.cpp
+++ b/cpp/src/Ice/ImplicitContextI.cpp
@@ -22,7 +22,7 @@ namespace
class SharedImplicitContext : public ImplicitContextI
{
public:
-
+
virtual Context getContext() const;
virtual void setContext(const Context&);
@@ -43,7 +43,7 @@ private:
class PerThreadImplicitContext : public ImplicitContextI
{
public:
-
+
PerThreadImplicitContext();
virtual ~PerThreadImplicitContext();
@@ -76,7 +76,7 @@ public:
// is assigned a slot in this vector.
//
typedef std::vector<Slot> SlotVector;
-
+
//
// We remember which slot-indices are in use (to be able to reuse indices)
//
@@ -90,7 +90,7 @@ public:
static DWORD _key;
#else
static pthread_key_t _key;
-#endif
+#endif
private:
@@ -107,7 +107,7 @@ extern "C" void iceImplicitContextThreadDestructor(void*);
-/*static*/ ImplicitContextI*
+ImplicitContextIPtr
ImplicitContextI::create(const std::string& kind)
{
if(kind == "None" || kind == "")
@@ -116,14 +116,14 @@ ImplicitContextI::create(const std::string& kind)
}
else if(kind == "Shared")
{
- return new SharedImplicitContext;
+ return ICE_MAKE_SHARED(SharedImplicitContext);
}
else if(kind == "PerThread")
{
#ifndef ICE_OS_WINRT
- return new PerThreadImplicitContext;
+ return ICE_MAKE_SHARED(PerThreadImplicitContext);
#else
- throw InitializationException(__FILE__, __LINE__,
+ throw InitializationException(__FILE__, __LINE__,
"'PerThread' Ice.ImplicitContext isn't supported for WinRT.");
return 0; // Keep the compiler happy.
#endif
@@ -132,7 +132,7 @@ ImplicitContextI::create(const std::string& kind)
{
throw Ice::InitializationException(
__FILE__, __LINE__,
- "'" + kind + "' is not a valid value for Ice.ImplicitContext");
+ "'" + kind + "' is not a valid value for Ice.ImplicitContext");
return 0; // Keep the compiler happy.
}
}
@@ -144,7 +144,7 @@ ImplicitContextI::cleanupThread()
if(PerThreadImplicitContext::_nextId > 0)
{
iceImplicitContextThreadDestructor(TlsGetValue(PerThreadImplicitContext::_key));
- }
+ }
}
#endif
@@ -167,7 +167,7 @@ SharedImplicitContext::setContext(const Context& newContext)
_context = newContext;
}
-bool
+bool
SharedImplicitContext::containsKey(const string& k) const
{
IceUtil::Mutex::Lock lock(_mutex);
@@ -175,7 +175,7 @@ SharedImplicitContext::containsKey(const string& k) const
return p != _context.end();
}
-string
+string
SharedImplicitContext::get(const string& k) const
{
IceUtil::Mutex::Lock lock(_mutex);
@@ -188,12 +188,12 @@ SharedImplicitContext::get(const string& k) const
}
-string
+string
SharedImplicitContext::put(const string& k, const string& v)
{
IceUtil::Mutex::Lock lock(_mutex);
string& val = _context[k];
-
+
string oldVal = val;
val = v;
return oldVal;
@@ -216,7 +216,7 @@ SharedImplicitContext::remove(const string& k)
}
}
-void
+void
SharedImplicitContext::write(const Context& proxyCtx, ::IceInternal::BasicStream* s) const
{
IceUtil::Mutex::Lock lock(_mutex);
@@ -238,7 +238,7 @@ SharedImplicitContext::write(const Context& proxyCtx, ::IceInternal::BasicStream
}
}
-void
+void
SharedImplicitContext::combine(const Context& proxyCtx, Context& ctx) const
{
IceUtil::Mutex::Lock lock(_mutex);
@@ -318,7 +318,7 @@ PerThreadImplicitContext::PerThreadImplicitContext()
}
# endif
}
-
+
//
// Now grabs an index
//
@@ -444,7 +444,7 @@ PerThreadImplicitContext::clearThreadContext() const
size_t i = sv->size();
bool clear = true;
- while(i != 0)
+ while(i != 0)
{
i--;
if((*sv)[i].context != 0)
@@ -509,7 +509,7 @@ PerThreadImplicitContext::setContext(const Context& newContext)
}
}
-bool
+bool
PerThreadImplicitContext::containsKey(const string& k) const
{
const Context* ctx = getThreadContext(false);
@@ -521,7 +521,7 @@ PerThreadImplicitContext::containsKey(const string& k) const
return p != ctx->end();
}
-string
+string
PerThreadImplicitContext::get(const string& k) const
{
const Context* ctx = getThreadContext(false);
@@ -537,13 +537,13 @@ PerThreadImplicitContext::get(const string& k) const
return p->second;
}
-string
+string
PerThreadImplicitContext::put(const string& k, const string& v)
{
Context* ctx = getThreadContext(true);
string& val = (*ctx)[k];
-
+
string oldVal = val;
val = v;
return oldVal;
@@ -557,7 +557,7 @@ PerThreadImplicitContext::remove(const string& k)
{
return "";
}
-
+
Context::iterator p = ctx->find(k);
if(p == ctx->end())
{
@@ -576,7 +576,7 @@ PerThreadImplicitContext::remove(const string& k)
}
}
-void
+void
PerThreadImplicitContext::write(const Context& proxyCtx, ::IceInternal::BasicStream* s) const
{
const Context* threadCtx = getThreadContext(false);
@@ -597,7 +597,7 @@ PerThreadImplicitContext::write(const Context& proxyCtx, ::IceInternal::BasicStr
}
}
-void
+void
PerThreadImplicitContext::combine(const Context& proxyCtx, Context& ctx) const
{
const Context* threadCtx = getThreadContext(false);
diff --git a/cpp/src/Ice/ImplicitContextI.h b/cpp/src/Ice/ImplicitContextI.h
index c70885d28c5..3fa3292fb1f 100644
--- a/cpp/src/Ice/ImplicitContextI.h
+++ b/cpp/src/Ice/ImplicitContextI.h
@@ -18,12 +18,14 @@ namespace Ice
//
// The base class for all ImplicitContext implementations
//
+class ImplicitContextI;
+ICE_DEFINE_PTR(ImplicitContextIPtr,ImplicitContextI);
class ImplicitContextI : public ImplicitContext
{
public:
-
- static ImplicitContextI* create(const std::string&);
+
+ static ImplicitContextIPtr create(const std::string&);
#ifdef _WIN32
static void cleanupThread();
@@ -45,7 +47,7 @@ public:
};
-typedef IceInternal::Handle<ImplicitContextI> ImplicitContextIPtr;
+ICE_DEFINE_PTR(ImplicitContextIPtr, ImplicitContextI);
}
#endif
diff --git a/cpp/src/Ice/Incoming.cpp b/cpp/src/Ice/Incoming.cpp
index 8b7e8a33ea4..55071b685c1 100644
--- a/cpp/src/Ice/Incoming.cpp
+++ b/cpp/src/Ice/Incoming.cpp
@@ -46,7 +46,12 @@ IceInternal::IncomingBase::IncomingBase(Instance* instance, ResponseHandler* res
_responseHandler(responseHandler)
{
_current.adapter = adapter;
+#ifdef ICE_CPP11_MAPPING
+ ::Ice::ConnectionI* conn = dynamic_cast<::Ice::ConnectionI*>(connection);
+ _current.con = conn ? dynamic_pointer_cast<::Ice::ConnectionI>(conn->shared_from_this()) : nullptr;
+#else
_current.con = connection;
+#endif
_current.requestId = requestId;
}
@@ -179,7 +184,7 @@ IceInternal::IncomingBase::__warning(const Exception& ex) const
if(_current.con)
{
Ice::ConnectionInfoPtr connInfo = _current.con->getInfo();
- Ice::IPConnectionInfoPtr ipConnInfo = Ice::IPConnectionInfoPtr::dynamicCast(connInfo);
+ Ice::IPConnectionInfoPtr ipConnInfo = ICE_DYNAMIC_CAST(Ice::IPConnectionInfo, connInfo);
if(ipConnInfo)
{
out << "\nremote host: " << ipConnInfo->remoteAddress << " remote port: " << ipConnInfo->remotePort;
@@ -200,7 +205,7 @@ IceInternal::IncomingBase::__warning(const string& msg) const
if(_current.con)
{
Ice::ConnectionInfoPtr connInfo = _current.con->getInfo();
- Ice::IPConnectionInfoPtr ipConnInfo = Ice::IPConnectionInfoPtr::dynamicCast(connInfo);
+ Ice::IPConnectionInfoPtr ipConnInfo = ICE_DYNAMIC_CAST(Ice::IPConnectionInfo, connInfo);
if(ipConnInfo)
{
out << "\nremote host: " << ipConnInfo->remoteAddress << " remote port: " << ipConnInfo->remotePort;
@@ -555,7 +560,14 @@ void
IceInternal::Incoming::setActive(IncomingAsync& cb)
{
assert(_cb == 0);
- _cb = &cb; // acquires a ref-count
+ //
+ // acquires a ref-count
+ //
+#ifdef ICE_CPP11_MAPPING
+ _cb = cb.shared_from_this();
+#else
+ _cb = &cb;
+#endif
}
void
diff --git a/cpp/src/Ice/IncomingAsync.cpp b/cpp/src/Ice/IncomingAsync.cpp
index b37f83246f3..3b4820cdbbb 100644
--- a/cpp/src/Ice/IncomingAsync.cpp
+++ b/cpp/src/Ice/IncomingAsync.cpp
@@ -23,8 +23,10 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(IncomingAsync* p) { return p; }
IceUtil::Shared* Ice::upCast(AMD_Object_ice_invoke* p) { return p; }
+#endif
namespace
{
@@ -54,7 +56,11 @@ Init init;
IceInternal::IncomingAsync::IncomingAsync(Incoming& in) :
IncomingBase(in),
_instanceCopy(_os.instance()),
+#ifdef ICE_CPP11_MAPPING
+ _responseHandlerCopy(dynamic_pointer_cast<ResponseHandler>(_responseHandler->shared_from_this())),
+#else
_responseHandlerCopy(_responseHandler),
+#endif
_retriable(in.isRetriable()),
_active(true)
{
@@ -291,6 +297,7 @@ IceInternal::IncomingAsync::__validateResponse(bool ok)
return true;
}
+#ifndef ICE_CPP11_MAPPING
IceAsync::Ice::AMD_Object_ice_invoke::AMD_Object_ice_invoke(Incoming& in) :
IncomingAsync(in)
{
@@ -338,3 +345,4 @@ IceAsync::Ice::AMD_Object_ice_invoke::ice_response(bool ok, const pair<const Byt
__response();
}
}
+#endif
diff --git a/cpp/src/Ice/Initialize.cpp b/cpp/src/Ice/Initialize.cpp
index bc29df15d75..66d8db8315a 100644
--- a/cpp/src/Ice/Initialize.cpp
+++ b/cpp/src/Ice/Initialize.cpp
@@ -27,19 +27,6 @@ using namespace IceInternal;
namespace
{
-pair<const Byte*, const Byte*>
-makePair(const vector<Byte>& v)
-{
- if(v.empty())
- {
- return pair<const Byte*, const Byte*>(static_cast<Byte*>(0), static_cast<Byte*>(0));
- }
- else
- {
- return pair<const Byte*, const Byte*>(&v[0], &v[0] + v.size());
- }
-}
-
IceUtil::Mutex* globalMutex = 0;
Ice::LoggerPtr processLogger;
@@ -134,13 +121,13 @@ Ice::stringSeqToArgs(const StringSeq& args, int& argc, char* argv[])
PropertiesPtr
Ice::createProperties()
{
- return new PropertiesI(IceUtil::getProcessStringConverter());
+ return PropertiesPtr(new PropertiesI(IceUtil::getProcessStringConverter()));
}
PropertiesPtr
Ice::createProperties(StringSeq& args, const PropertiesPtr& defaults)
{
- return new PropertiesI(args, defaults, IceUtil::getProcessStringConverter());
+ return PropertiesPtr(new PropertiesI(args, defaults, IceUtil::getProcessStringConverter()));
}
PropertiesPtr
@@ -154,7 +141,7 @@ Ice::createProperties(int& argc, char* argv[], const PropertiesPtr& defaults)
Ice::ThreadHookPlugin::ThreadHookPlugin(const CommunicatorPtr& communicator, const ThreadNotificationPtr& threadHook)
{
- if(communicator == 0)
+ if(communicator == ICE_NULLPTR)
{
throw PluginInitializationException(__FILE__, __LINE__, "Communicator cannot be null");
}
@@ -229,18 +216,16 @@ Ice::initialize(int& argc, char* argv[], const InitializationData& initializatio
InitializationData initData = initializationData;
initData.properties = createProperties(argc, argv, initData.properties);
- CommunicatorI* communicatorI = new CommunicatorI(initData);
- CommunicatorPtr result = communicatorI; // For exception safety.
- communicatorI->finishSetup(argc, argv);
- return result;
+ CommunicatorIPtr communicator = CommunicatorI::create(initData);
+ communicator->finishSetup(argc, argv);
+ return communicator;
}
CommunicatorPtr
Ice::initialize(StringSeq& args, const InitializationData& initializationData, Int version)
{
- CommunicatorPtr communicator;
IceUtilInternal::ArgVector av(args);
- communicator = initialize(av.argc, av.argv, initializationData, version);
+ CommunicatorPtr communicator = initialize(av.argc, av.argv, initializationData, version);
args = argsToStringSeq(av.argc, av.argv);
return communicator;
}
@@ -254,14 +239,32 @@ Ice::initialize(const InitializationData& initData, Int version)
//
checkIceVersion(version);
- CommunicatorI* communicatorI = new CommunicatorI(initData);
- CommunicatorPtr result = communicatorI; // For exception safety.
+ CommunicatorIPtr communicator = CommunicatorI::create(initData);
int argc = 0;
char* argv[] = { 0 };
- communicatorI->finishSetup(argc, argv);
- return result;
+ communicator->finishSetup(argc, argv);
+ return communicator;
}
+#ifndef ICE_CPP11_MAPPING
+
+namespace
+{
+
+pair<const Byte*, const Byte*>
+makePair(const vector<Byte>& v)
+{
+ if(v.empty())
+ {
+ return pair<const Byte*, const Byte*>(static_cast<Byte*>(0), static_cast<Byte*>(0));
+ }
+ else
+ {
+ return pair<const Byte*, const Byte*>(&v[0], &v[0] + v.size());
+ }
+}
+
+}
InputStreamPtr
Ice::createInputStream(const CommunicatorPtr& communicator, const vector<Byte>& bytes)
{
@@ -323,18 +326,19 @@ Ice::createOutputStream(const CommunicatorPtr& communicator, const EncodingVersi
{
return new OutputStreamI(communicator, v);
}
+#endif
LoggerPtr
Ice::getProcessLogger()
{
IceUtilInternal::MutexPtrLock<IceUtil::Mutex> lock(globalMutex);
- if(processLogger == 0)
+ if(processLogger == ICE_NULLPTR)
{
//
// TODO: Would be nice to be able to use process name as prefix by default.
//
- processLogger = new Ice::LoggerI("", "", true, IceUtil::getProcessStringConverter());
+ processLogger = ICE_MAKE_SHARED(Ice::LoggerI, "", "", true, IceUtil::getProcessStringConverter());
}
return processLogger;
}
@@ -356,7 +360,7 @@ Ice::registerPluginFactory(const std::string& name, PLUGIN_FACTORY factory, bool
InstancePtr
IceInternal::getInstance(const CommunicatorPtr& communicator)
{
- CommunicatorI* p = dynamic_cast<CommunicatorI*>(communicator.get());
+ CommunicatorIPtr p = ICE_DYNAMIC_CAST(::Ice::CommunicatorI, communicator);
assert(p);
return p->_instance;
}
@@ -364,12 +368,12 @@ IceInternal::getInstance(const CommunicatorPtr& communicator)
IceUtil::TimerPtr
IceInternal::getInstanceTimer(const CommunicatorPtr& communicator)
{
- CommunicatorI* p = dynamic_cast<CommunicatorI*>(communicator.get());
+ CommunicatorIPtr p = ICE_DYNAMIC_CAST(::Ice::CommunicatorI, communicator);
assert(p);
return p->_instance->timer();
}
-#ifdef ICE_CPP11
+#ifdef ICE_CPP11_COMPILER
Ice::DispatcherPtr
Ice::newDispatcher(const ::std::function<void (const DispatcherCallPtr&, const ConnectionPtr)>& cb)
{
@@ -393,9 +397,7 @@ Ice::newDispatcher(const ::std::function<void (const DispatcherCallPtr&, const C
return new Cpp11Dispatcher(cb);
}
-#endif
-#ifdef ICE_CPP11
Ice::BatchRequestInterceptorPtr
Ice::newBatchRequestInterceptor(const ::std::function<void (const BatchRequest&, int, int)>& cb)
{
@@ -417,6 +419,6 @@ Ice::newBatchRequestInterceptor(const ::std::function<void (const BatchRequest&,
const ::std::function<void (const BatchRequest&, int, int)> _cb;
};
- return new Cpp11BatchRequestInterceptor(cb);
+ return ICE_MAKE_SHARED(Cpp11BatchRequestInterceptor, cb);
}
#endif
diff --git a/cpp/src/Ice/Instance.cpp b/cpp/src/Ice/Instance.cpp
index 4b3590c01de..f3f8e2d768d 100644
--- a/cpp/src/Ice/Instance.cpp
+++ b/cpp/src/Ice/Instance.cpp
@@ -691,7 +691,7 @@ IceInternal::Instance::identityToString(const Identity& ident) const
}
}
-Ice::ObjectPrx
+Ice::ObjectPrxPtr
IceInternal::Instance::createAdmin(const ObjectAdapterPtr& adminAdapter, const Identity& adminIdentity)
{
ObjectAdapterPtr adapter = adminAdapter;
@@ -759,7 +759,7 @@ IceInternal::Instance::createAdmin(const ObjectAdapterPtr& adminAdapter, const I
return adapter->createProxy(adminIdentity);
}
-Ice::ObjectPrx
+Ice::ObjectPrxPtr
IceInternal::Instance::getAdmin()
{
Lock sync(*this);
@@ -850,12 +850,12 @@ IceInternal::Instance::addAllAdminFacets()
void
IceInternal::Instance::setServerProcessProxy(const ObjectAdapterPtr& adminAdapter, const Identity& adminIdentity)
{
- ObjectPrx admin = adminAdapter->createProxy(adminIdentity);
- LocatorPrx locator = adminAdapter->getLocator();
+ ObjectPrxPtr admin = adminAdapter->createProxy(adminIdentity);
+ LocatorPrxPtr locator = adminAdapter->getLocator();
const string serverId = _initData.properties->getProperty("Ice.Admin.ServerId");
if(locator && serverId != "")
{
- ProcessPrx process = ProcessPrx::uncheckedCast(admin->ice_facet("Process"));
+ ProcessPrxPtr process = ICE_UNCHECKED_CAST(ProcessPrx, admin->ice_facet("Process"));
try
{
//
@@ -1009,7 +1009,7 @@ IceInternal::Instance::findAllAdminFacets()
}
void
-IceInternal::Instance::setDefaultLocator(const Ice::LocatorPrx& defaultLocator)
+IceInternal::Instance::setDefaultLocator(const Ice::LocatorPrxPtr& defaultLocator)
{
Lock sync(*this);
@@ -1022,7 +1022,7 @@ IceInternal::Instance::setDefaultLocator(const Ice::LocatorPrx& defaultLocator)
}
void
-IceInternal::Instance::setDefaultRouter(const Ice::RouterPrx& defaultRouter)
+IceInternal::Instance::setDefaultRouter(const Ice::RouterPrxPtr& defaultRouter)
{
Lock sync(*this);
@@ -1222,23 +1222,23 @@ IceInternal::Instance::Instance(const CommunicatorPtr& communicator, const Initi
throw InitializationException(__FILE__, __LINE__, "Both syslog and file logger cannot be enabled.");
}
- _initData.logger =
- new SysLoggerI(_initData.properties->getProperty("Ice.ProgramName"),
- _initData.properties->getPropertyWithDefault("Ice.SyslogFacility", "LOG_USER"));
+ _initData.logger = ICE_MAKE_SHARED(SysLoggerI,
+ _initData.properties->getProperty("Ice.ProgramName"),
+ _initData.properties->getPropertyWithDefault("Ice.SyslogFacility", "LOG_USER"));
}
else
#endif
if(!logfile.empty())
{
- _initData.logger = new LoggerI(_initData.properties->getProperty("Ice.ProgramName"), logfile);
+ _initData.logger = ICE_MAKE_SHARED(LoggerI, _initData.properties->getProperty("Ice.ProgramName"), logfile);
}
else
{
_initData.logger = getProcessLogger();
- if(LoggerIPtr::dynamicCast(_initData.logger))
+ if(ICE_DYNAMIC_CAST(Logger, _initData.logger))
{
- _initData.logger = new LoggerI(_initData.properties->getProperty("Ice.ProgramName"), "",
- logStdErrConvert, _stringConverter);
+ _initData.logger = ICE_MAKE_SHARED(LoggerI, _initData.properties->getProperty("Ice.ProgramName"), "",
+ logStdErrConvert, _stringConverter);
}
}
}
@@ -1347,13 +1347,13 @@ IceInternal::Instance::Instance(const CommunicatorPtr& communicator, const Initi
_dynamicLibraryList = new DynamicLibraryList;
- _pluginManager = new PluginManagerI(communicator, _dynamicLibraryList);
+ _pluginManager = ICE_MAKE_SHARED(PluginManagerI, communicator, _dynamicLibraryList);
_outgoingConnectionFactory = new OutgoingConnectionFactory(communicator, this);
_servantFactoryManager = new ObjectFactoryManager();
- _objectAdapterFactory = new ObjectAdapterFactory(this, communicator);
+ _objectAdapterFactory = ICE_MAKE_SHARED(ObjectAdapterFactory, this, communicator);
_retryQueue = new RetryQueue(this);
@@ -1494,7 +1494,7 @@ IceInternal::Instance::finishSetup(int& argc, char* argv[], const Ice::Communica
const string processFacetName = "Process";
if(_adminFacetFilter.empty() || _adminFacetFilter.find(processFacetName) != _adminFacetFilter.end())
{
- _adminFacets.insert(make_pair(processFacetName, new ProcessI(communicator)));
+ _adminFacets.insert(make_pair(processFacetName, ICE_MAKE_SHARED(ProcessI, communicator)));
}
//
@@ -1515,7 +1515,7 @@ IceInternal::Instance::finishSetup(int& argc, char* argv[], const Ice::Communica
PropertiesAdminIPtr propsAdmin;
if(_adminFacetFilter.empty() || _adminFacetFilter.find(propertiesFacetName) != _adminFacetFilter.end())
{
- propsAdmin = new PropertiesAdminI(_initData.properties, _initData.logger);
+ propsAdmin = ICE_MAKE_SHARED(PropertiesAdminI, _initData.properties, _initData.logger);
_adminFacets.insert(make_pair(propertiesFacetName, propsAdmin));
}
@@ -1525,7 +1525,7 @@ IceInternal::Instance::finishSetup(int& argc, char* argv[], const Ice::Communica
const string metricsFacetName = "Metrics";
if(_adminFacetFilter.empty() || _adminFacetFilter.find(metricsFacetName) != _adminFacetFilter.end())
{
- CommunicatorObserverIPtr observer = new CommunicatorObserverI(_initData);
+ CommunicatorObserverIPtr observer = ICE_MAKE_SHARED(CommunicatorObserverI, _initData);
_initData.observer = observer;
_adminFacets.insert(make_pair(metricsFacetName, observer->getFacet()));
@@ -1544,7 +1544,7 @@ IceInternal::Instance::finishSetup(int& argc, char* argv[], const Ice::Communica
//
if(_initData.observer)
{
- _initData.observer->setObserverUpdater(new ObserverUpdaterI(this));
+ _initData.observer->setObserverUpdater(ICE_MAKE_SHARED(ObserverUpdaterI, this));
}
//
@@ -1589,7 +1589,7 @@ IceInternal::Instance::finishSetup(int& argc, char* argv[], const Ice::Communica
//
if(!_referenceFactory->getDefaultRouter())
{
- RouterPrx router = RouterPrx::uncheckedCast(_proxyFactory->propertyToProxy("Ice.Default.Router"));
+ RouterPrxPtr router = ICE_UNCHECKED_CAST(RouterPrx, _proxyFactory->propertyToProxy("Ice.Default.Router"));
if(router)
{
_referenceFactory = _referenceFactory->setDefaultRouter(router);
@@ -1598,7 +1598,7 @@ IceInternal::Instance::finishSetup(int& argc, char* argv[], const Ice::Communica
if(!_referenceFactory->getDefaultLocator())
{
- LocatorPrx locator = LocatorPrx::uncheckedCast(_proxyFactory->propertyToProxy("Ice.Default.Locator"));
+ LocatorPrxPtr locator = ICE_UNCHECKED_CAST(LocatorPrx, _proxyFactory->propertyToProxy("Ice.Default.Locator"));
if(locator)
{
_referenceFactory = _referenceFactory->setDefaultLocator(locator);
@@ -1715,7 +1715,7 @@ IceInternal::Instance::destroy()
if(_initData.observer)
{
- CommunicatorObserverIPtr observer = CommunicatorObserverIPtr::dynamicCast(_initData.observer);
+ CommunicatorObserverIPtr observer = ICE_DYNAMIC_CAST(CommunicatorObserverI, _initData.observer);
if(observer)
{
observer->destroy(); // Break cyclic reference counts. Don't clear _observer, it's immutable.
@@ -1723,7 +1723,7 @@ IceInternal::Instance::destroy()
_initData.observer->setObserverUpdater(0); // Break cyclic reference count.
}
- LoggerAdminLoggerPtr logger = LoggerAdminLoggerPtr::dynamicCast(_initData.logger);
+ LoggerAdminLoggerPtr logger = ICE_DYNAMIC_CAST(LoggerAdminLogger, _initData.logger);
if(logger)
{
//
diff --git a/cpp/src/Ice/Instance.h b/cpp/src/Ice/Instance.h
index a6e9182b136..32685e2e9b5 100644
--- a/cpp/src/Ice/Instance.h
+++ b/cpp/src/Ice/Instance.h
@@ -58,7 +58,7 @@ class Timer;
typedef IceUtil::Handle<Timer> TimerPtr;
class MetricsAdminI;
-typedef IceUtil::Handle<MetricsAdminI> MetricsAdminIPtr;
+ICE_DEFINE_PTR(MetricsAdminIPtr, MetricsAdminI);
class RequestHandlerFactory;
typedef IceUtil::Handle<RequestHandlerFactory> RequestHandlerFactoryPtr;
@@ -116,8 +116,8 @@ public:
Ice::Identity stringToIdentity(const std::string&) const;
std::string identityToString(const Ice::Identity&) const;
- Ice::ObjectPrx createAdmin(const Ice::ObjectAdapterPtr&, const Ice::Identity&);
- Ice::ObjectPrx getAdmin();
+ Ice::ObjectPrxPtr createAdmin(const Ice::ObjectAdapterPtr&, const Ice::Identity&);
+ Ice::ObjectPrxPtr getAdmin();
void addAdminFacet(const Ice::ObjectPtr&, const std::string&);
Ice::ObjectPtr removeAdminFacet(const std::string&);
Ice::ObjectPtr findAdminFacet(const std::string&);
@@ -128,8 +128,8 @@ public:
return _implicitContext;
}
- void setDefaultLocator(const Ice::LocatorPrx&);
- void setDefaultRouter(const Ice::RouterPrx&);
+ void setDefaultLocator(const Ice::LocatorPrxPtr&);
+ void setDefaultRouter(const Ice::RouterPrxPtr&);
void setLogger(const Ice::LoggerPtr&);
void setThreadHook(const Ice::ThreadNotificationPtr&);
diff --git a/cpp/src/Ice/InstrumentationI.cpp b/cpp/src/Ice/InstrumentationI.cpp
index 60d17e89b21..f5ddd6e6fb4 100644
--- a/cpp/src/Ice/InstrumentationI.cpp
+++ b/cpp/src/Ice/InstrumentationI.cpp
@@ -22,7 +22,7 @@ using namespace IceInternal;
using namespace Ice::Instrumentation;
using namespace IceMX;
-namespace
+namespace
{
Context emptyCtx;
@@ -44,14 +44,14 @@ getThreadStateMetric(ThreadState s)
assert(false);
return 0;
}
-}
+}
-struct ThreadStateChanged
+struct ThreadStateChanged
{
ThreadStateChanged(ThreadState oldState, ThreadState newState) : oldState(oldState), newState(newState)
{
}
-
+
void operator()(const ThreadMetricsPtr& v)
{
if(oldState != ThreadStateIdle)
@@ -75,7 +75,7 @@ public:
class Attributes : public AttributeResolverT<ConnectionHelper>
{
public:
-
+
Attributes()
{
add("parent", &ConnectionHelper::getParent);
@@ -85,8 +85,8 @@ public:
}
};
static Attributes attributes;
-
- ConnectionHelper(const ConnectionInfoPtr& con, const EndpointPtr& endpt, ConnectionState state) :
+
+ ConnectionHelper(const ConnectionInfoPtr& con, const EndpointPtr& endpt, ConnectionState state) :
_connectionInfo(con), _endpoint(endpt), _state(state)
{
}
@@ -102,7 +102,7 @@ public:
if(_id.empty())
{
ostringstream os;
- IPConnectionInfoPtr info = IPConnectionInfoPtr::dynamicCast(_connectionInfo);
+ IPConnectionInfoPtr info = ICE_DYNAMIC_CAST(IPConnectionInfo, _connectionInfo);
if(info)
{
os << info->localAddress << ':' << info->localPort;
@@ -142,8 +142,8 @@ public:
return "";
}
}
-
- string
+
+ string
getParent() const
{
if(!_connectionInfo->adapterName.empty())
@@ -155,7 +155,7 @@ public:
return "Communicator";
}
}
-
+
const ConnectionInfoPtr&
getConnectionInfo() const
{
@@ -177,7 +177,7 @@ public:
}
return _endpointInfo;
}
-
+
private:
const ConnectionInfoPtr& _connectionInfo;
@@ -196,7 +196,7 @@ public:
class Attributes : public AttributeResolverT<DispatchHelper>
{
public:
-
+
Attributes()
{
add("parent", &DispatchHelper::getParent);
@@ -215,7 +215,7 @@ public:
}
};
static Attributes attributes;
-
+
DispatchHelper(const Current& current, int size) : _current(current), _size(size)
{
}
@@ -265,7 +265,7 @@ public:
return _id;
}
- string
+ string
getParent() const
{
return _current.adapter->getName();
@@ -336,7 +336,7 @@ public:
class Attributes : public AttributeResolverT<InvocationHelper>
{
public:
-
+
Attributes()
{
add("parent", &InvocationHelper::getParent);
@@ -353,8 +353,8 @@ public:
}
};
static Attributes attributes;
-
- InvocationHelper(const ObjectPrx& proxy, const string& op, const Context& ctx = emptyCtx) :
+
+ InvocationHelper(const ObjectPrxPtr& proxy, const string& op, const Context& ctx = emptyCtx) :
_proxy(proxy), _operation(op), _context(ctx)
{
}
@@ -388,23 +388,23 @@ public:
if(_proxy->ice_isTwoway())
{
return "twoway";
- }
+ }
else if(_proxy->ice_isOneway())
{
return "oneway";
- }
+ }
else if(_proxy->ice_isBatchOneway())
{
return "batch-oneway";
- }
+ }
else if(_proxy->ice_isDatagram())
{
return "datagram";
- }
+ }
else if(_proxy->ice_isBatchDatagram())
{
return "batch-datagram";
- }
+ }
else
{
throw invalid_argument("mode");
@@ -439,13 +439,13 @@ public:
return _id;
}
- string
+ string
getParent() const
{
return "Communicator";
}
- const ObjectPrx&
+ const ObjectPrxPtr&
getProxy() const
{
return _proxy;
@@ -473,7 +473,7 @@ public:
private:
- const ObjectPrx& _proxy;
+ const ObjectPrxPtr& _proxy;
const string& _operation;
const Context& _context;
mutable string _id;
@@ -488,7 +488,7 @@ public:
class Attributes : public AttributeResolverT<RemoteInvocationHelper>
{
public:
-
+
Attributes()
{
add("parent", &RemoteInvocationHelper::getParent);
@@ -498,8 +498,8 @@ public:
}
};
static Attributes attributes;
-
- RemoteInvocationHelper(const ConnectionInfoPtr& con, const EndpointPtr& endpt, int requestId, int size) :
+
+ RemoteInvocationHelper(const ConnectionInfoPtr& con, const EndpointPtr& endpt, int requestId, int size) :
_connectionInfo(con), _endpoint(endpt), _requestId(requestId), _size(size)
{
}
@@ -527,8 +527,8 @@ public:
}
return _id;
}
-
- string
+
+ string
getParent() const
{
if(!_connectionInfo->adapterName.empty())
@@ -540,7 +540,7 @@ public:
return "Communicator";
}
}
-
+
const ConnectionInfoPtr&
getConnectionInfo() const
{
@@ -590,7 +590,7 @@ public:
class Attributes : public AttributeResolverT<CollocatedInvocationHelper>
{
public:
-
+
Attributes()
{
add("parent", &CollocatedInvocationHelper::getParent);
@@ -599,8 +599,8 @@ public:
}
};
static Attributes attributes;
-
- CollocatedInvocationHelper(const Ice::ObjectAdapterPtr& adapter, int requestId, int size) :
+
+ CollocatedInvocationHelper(const Ice::ObjectAdapterPtr& adapter, int requestId, int size) :
_requestId(requestId), _size(size), _id(adapter->getName())
{
}
@@ -620,8 +620,8 @@ public:
{
return _id;
}
-
- string
+
+ string
getParent() const
{
return "Communicator";
@@ -649,7 +649,7 @@ public:
class Attributes : public AttributeResolverT<ThreadHelper>
{
public:
-
+
Attributes()
{
add("parent", &ThreadHelper::_parent);
@@ -657,7 +657,7 @@ public:
}
};
static Attributes attributes;
-
+
ThreadHelper(const string& parent, const string& id, ThreadState state) : _parent(parent), _id(id), _state(state)
{
}
@@ -676,7 +676,7 @@ public:
}
private:
-
+
const string _parent;
const string _id;
const ThreadState _state;
@@ -691,7 +691,7 @@ public:
class Attributes : public AttributeResolverT<EndpointHelper>
{
public:
-
+
Attributes()
{
add("parent", &EndpointHelper::getParent);
@@ -700,7 +700,7 @@ public:
}
};
static Attributes attributes;
-
+
EndpointHelper(const EndpointPtr& endpt, const string& id) : _endpoint(endpt), _id(id)
{
}
@@ -747,7 +747,7 @@ public:
}
private:
-
+
const EndpointPtr _endpoint;
mutable string _id;
mutable EndpointInfoPtr _endpointInfo;
@@ -757,7 +757,7 @@ EndpointHelper::Attributes EndpointHelper::attributes;
}
-void
+void
ConnectionObserverI::sentBytes(Int num)
{
forEach(add(&ConnectionMetrics::sentBytes, num));
@@ -767,7 +767,7 @@ ConnectionObserverI::sentBytes(Int num)
}
}
-void
+void
ConnectionObserverI::receivedBytes(Int num)
{
forEach(add(&ConnectionMetrics::receivedBytes, num));
@@ -849,8 +849,8 @@ InvocationObserverI::userException()
}
RemoteObserverPtr
-InvocationObserverI::getRemoteObserver(const ConnectionInfoPtr& connection,
- const EndpointPtr& endpoint,
+InvocationObserverI::getRemoteObserver(const ConnectionInfoPtr& connection,
+ const EndpointPtr& endpoint,
int requestId,
int size)
{
@@ -861,7 +861,7 @@ InvocationObserverI::getRemoteObserver(const ConnectionInfoPtr& connection,
{
delegate = _delegate->getRemoteObserver(connection, endpoint, requestId, size);
}
- return getObserverWithDelegate<RemoteObserverI>("Remote",
+ return getObserverWithDelegate<RemoteObserverI>("Remote",
RemoteInvocationHelper(connection, endpoint, requestId, size),
delegate);
}
@@ -891,7 +891,7 @@ InvocationObserverI::getCollocatedObserver(const Ice::ObjectAdapterPtr& adapter,
return 0;
}
-CommunicatorObserverI::CommunicatorObserverI(const InitializationData& initData) :
+CommunicatorObserverI::CommunicatorObserverI(const InitializationData& initData) :
_metrics(new MetricsAdminI(initData.properties, initData.logger)),
_delegate(initData.observer),
_connections(_metrics, "Connection"),
@@ -962,10 +962,10 @@ CommunicatorObserverI::getEndpointLookupObserver(const EndpointPtr& endpt)
return 0;
}
-ConnectionObserverPtr
-CommunicatorObserverI::getConnectionObserver(const ConnectionInfoPtr& con,
+ConnectionObserverPtr
+CommunicatorObserverI::getConnectionObserver(const ConnectionInfoPtr& con,
const EndpointPtr& endpt,
- ConnectionState state,
+ ConnectionState state,
const ConnectionObserverPtr& observer)
{
if(_connections.isEnabled())
@@ -989,8 +989,8 @@ CommunicatorObserverI::getConnectionObserver(const ConnectionInfoPtr& con,
return 0;
}
-ThreadObserverPtr
-CommunicatorObserverI::getThreadObserver(const string& parent,
+ThreadObserverPtr
+CommunicatorObserverI::getThreadObserver(const string& parent,
const string& id,
ThreadState state,
const ThreadObserverPtr& observer)
@@ -1016,8 +1016,8 @@ CommunicatorObserverI::getThreadObserver(const string& parent,
return 0;
}
-InvocationObserverPtr
-CommunicatorObserverI::getInvocationObserver(const ObjectPrx& proxy, const string& op, const Context& ctx)
+InvocationObserverPtr
+CommunicatorObserverI::getInvocationObserver(const ObjectPrxPtr& proxy, const string& op, const Context& ctx)
{
if(_invocations.isEnabled())
{
@@ -1039,7 +1039,7 @@ CommunicatorObserverI::getInvocationObserver(const ObjectPrx& proxy, const strin
return 0;
}
-DispatchObserverPtr
+DispatchObserverPtr
CommunicatorObserverI::getDispatchObserver(const Current& current, int size)
{
if(_dispatch.isEnabled())
@@ -1062,7 +1062,7 @@ CommunicatorObserverI::getDispatchObserver(const Current& current, int size)
return 0;
}
-const IceInternal::MetricsAdminIPtr&
+const IceInternal::MetricsAdminIPtr&
CommunicatorObserverI::getFacet() const
{
assert(_metrics);
diff --git a/cpp/src/Ice/InstrumentationI.h b/cpp/src/Ice/InstrumentationI.h
index 53994591414..7ae26d19b2b 100644
--- a/cpp/src/Ice/InstrumentationI.h
+++ b/cpp/src/Ice/InstrumentationI.h
@@ -21,9 +21,8 @@ template<typename T, typename O> class ObserverWithDelegateT : public IceMX::Obs
public:
typedef O ObserverType;
- typedef typename IceInternal::Handle<O> ObserverPtrType;
-
- virtual void
+ typedef typename ICE_INTERNAL_HANDLE<O> ObserverPtrType;
+ virtual void
attach()
{
IceMX::ObserverT<T>::attach();
@@ -33,7 +32,7 @@ public:
}
}
- virtual void
+ virtual void
detach()
{
IceMX::ObserverT<T>::detach();
@@ -65,11 +64,11 @@ public:
_delegate = delegate;
}
- template<typename ObserverImpl, typename ObserverMetricsType, typename ObserverPtrType> ObserverPtrType
- getObserverWithDelegate(const std::string& mapName, const IceMX::MetricsHelperT<ObserverMetricsType>& helper,
+ template<typename ObserverImpl, typename ObserverMetricsType, typename ObserverPtrType> ObserverPtrType
+ getObserverWithDelegate(const std::string& mapName, const IceMX::MetricsHelperT<ObserverMetricsType>& helper,
const ObserverPtrType& del)
{
- IceInternal::Handle<ObserverImpl> obsv = IceMX::ObserverT<T>::template getObserver<ObserverImpl>(mapName,
+ ICE_INTERNAL_HANDLE<ObserverImpl> obsv = IceMX::ObserverT<T>::template getObserver<ObserverImpl>(mapName,
helper);
if(obsv)
{
@@ -88,15 +87,15 @@ template<typename T> class ObserverFactoryWithDelegateT : public IceMX::Observer
{
public:
- ObserverFactoryWithDelegateT(const IceInternal::MetricsAdminIPtr& metrics, const std::string& name) :
+ ObserverFactoryWithDelegateT(const IceInternal::MetricsAdminIPtr& metrics, const std::string& name) :
IceMX::ObserverFactoryT<T>(metrics, name)
{
}
- template<typename ObserverMetricsType, typename ObserverPtrType> ObserverPtrType
+ template<typename ObserverMetricsType, typename ObserverPtrType> ObserverPtrType
getObserverWithDelegate(const IceMX::MetricsHelperT<ObserverMetricsType>& helper, const ObserverPtrType& del)
{
- IceInternal::Handle<T> obsv = IceMX::ObserverFactoryT<T>::getObserver(helper);
+ ICE_INTERNAL_HANDLE<T> obsv = IceMX::ObserverFactoryT<T>::getObserver(helper);
if(obsv)
{
obsv->setDelegate(del);
@@ -105,11 +104,11 @@ public:
return del;
}
- template<typename ObserverMetricsType, typename ObserverPtrType> ObserverPtrType
- getObserverWithDelegate(const IceMX::MetricsHelperT<ObserverMetricsType>& helper, const ObserverPtrType& del,
+ template<typename ObserverMetricsType, typename ObserverPtrType> ObserverPtrType
+ getObserverWithDelegate(const IceMX::MetricsHelperT<ObserverMetricsType>& helper, const ObserverPtrType& del,
const ObserverPtrType& old)
{
- IceInternal::Handle<T> obsv = IceMX::ObserverFactoryT<T>::getObserver(helper, old);
+ ICE_INTERNAL_HANDLE<T> obsv = IceMX::ObserverFactoryT<T>::getObserver(helper, old);
if(obsv)
{
obsv->setDelegate(del);
@@ -129,7 +128,7 @@ void addEndpointAttributes(typename Helper::Attributes& attrs)
attrs.add("endpointIsSecure", &Helper::getEndpointInfo, &Ice::EndpointInfo::secure);
attrs.add("endpointTimeout", &Helper::getEndpointInfo, &Ice::EndpointInfo::timeout);
attrs.add("endpointCompress", &Helper::getEndpointInfo, &Ice::EndpointInfo::compress);
-
+
attrs.add("endpointHost", &Helper::getEndpointInfo, &Ice::IPEndpointInfo::host);
attrs.add("endpointPort", &Helper::getEndpointInfo, &Ice::IPEndpointInfo::port);
}
@@ -140,19 +139,19 @@ void addConnectionAttributes(typename Helper::Attributes& attrs)
attrs.add("incoming", &Helper::getConnectionInfo, &Ice::ConnectionInfo::incoming);
attrs.add("adapterName", &Helper::getConnectionInfo, &Ice::ConnectionInfo::adapterName);
attrs.add("connectionId", &Helper::getConnectionInfo, &Ice::ConnectionInfo::connectionId);
-
+
attrs.add("localHost", &Helper::getConnectionInfo, &Ice::IPConnectionInfo::localAddress);
attrs.add("localPort", &Helper::getConnectionInfo, &Ice::IPConnectionInfo::localPort);
attrs.add("remoteHost", &Helper::getConnectionInfo, &Ice::IPConnectionInfo::remoteAddress);
attrs.add("remotePort", &Helper::getConnectionInfo, &Ice::IPConnectionInfo::remotePort);
-
+
attrs.add("mcastHost", &Helper::getConnectionInfo, &Ice::UDPConnectionInfo::mcastAddress);
attrs.add("mcastPort", &Helper::getConnectionInfo, &Ice::UDPConnectionInfo::mcastPort);
-
+
addEndpointAttributes<Helper>(attrs);
}
-class ConnectionObserverI : public ObserverWithDelegateT<IceMX::ConnectionMetrics,
+class ConnectionObserverI : public ObserverWithDelegateT<IceMX::ConnectionMetrics,
Ice::Instrumentation::ConnectionObserver>
{
public:
@@ -184,7 +183,7 @@ public:
virtual void reply(Ice::Int);
};
-class CollocatedObserverI : public ObserverWithDelegateT<IceMX::CollocatedMetrics,
+class CollocatedObserverI : public ObserverWithDelegateT<IceMX::CollocatedMetrics,
Ice::Instrumentation::CollocatedObserver>
{
public:
@@ -192,7 +191,7 @@ public:
virtual void reply(Ice::Int);
};
-class InvocationObserverI : public ObserverWithDelegateT<IceMX::InvocationMetrics,
+class InvocationObserverI : public ObserverWithDelegateT<IceMX::InvocationMetrics,
Ice::Instrumentation::InvocationObserver>
{
public:
@@ -201,7 +200,7 @@ public:
virtual void userException();
- virtual Ice::Instrumentation::RemoteObserverPtr
+ virtual Ice::Instrumentation::RemoteObserverPtr
getRemoteObserver(const Ice::ConnectionInfoPtr&, const Ice::EndpointPtr&, Ice::Int, Ice::Int);
virtual Ice::Instrumentation::CollocatedObserverPtr
@@ -217,23 +216,23 @@ public:
CommunicatorObserverI(const Ice::InitializationData&);
virtual void setObserverUpdater(const Ice::Instrumentation::ObserverUpdaterPtr&);
-
+
virtual Ice::Instrumentation::ObserverPtr getConnectionEstablishmentObserver(const Ice::EndpointPtr&,
const std::string&);
-
+
virtual Ice::Instrumentation::ObserverPtr getEndpointLookupObserver(const Ice::EndpointPtr&);
-
- virtual Ice::Instrumentation::ConnectionObserverPtr
- getConnectionObserver(const Ice::ConnectionInfoPtr&,
+
+ virtual Ice::Instrumentation::ConnectionObserverPtr
+ getConnectionObserver(const Ice::ConnectionInfoPtr&,
const Ice::EndpointPtr&,
- Ice::Instrumentation::ConnectionState,
+ Ice::Instrumentation::ConnectionState,
const Ice::Instrumentation::ConnectionObserverPtr&);
virtual Ice::Instrumentation::ThreadObserverPtr getThreadObserver(const std::string&, const std::string&,
Ice::Instrumentation::ThreadState,
const Ice::Instrumentation::ThreadObserverPtr&);
- virtual Ice::Instrumentation::InvocationObserverPtr getInvocationObserver(const Ice::ObjectPrx&,
+ virtual Ice::Instrumentation::InvocationObserverPtr getInvocationObserver(const Ice::ObjectPrxPtr&,
const std::string&,
const Ice::Context&);
@@ -255,7 +254,7 @@ private:
ObserverFactoryWithDelegateT<ObserverI> _connects;
ObserverFactoryWithDelegateT<ObserverI> _endpointLookups;
};
-typedef IceUtil::Handle<CommunicatorObserverI> CommunicatorObserverIPtr;
+ICE_DEFINE_PTR(CommunicatorObserverIPtr, CommunicatorObserverI);
};
diff --git a/cpp/src/Ice/LocatorInfo.cpp b/cpp/src/Ice/LocatorInfo.cpp
index b4ea96998b1..f3477c972cc 100644
--- a/cpp/src/Ice/LocatorInfo.cpp
+++ b/cpp/src/Ice/LocatorInfo.cpp
@@ -18,6 +18,7 @@
#include <Ice/Reference.h>
#include <Ice/Functional.h>
#include <Ice/Properties.h>
+#include <Ice/Comparable.h>
#include <iterator>
using namespace std;
@@ -44,11 +45,31 @@ public:
{
try
{
+#ifdef ICE_CPP11_MAPPING
+ _locatorInfo->getLocator()->findObjectById_async(
+ _ref->getIdentity(),
+ [this](const ObjectPrxPtr& object)
+ {
+ this->response(object);
+ },
+ [this](exception_ptr e)
+ {
+ try
+ {
+ rethrow_exception(e);
+ }
+ catch(const UserException& ex)
+ {
+ this->exception(ex);
+ }
+ });
+#else
_locatorInfo->getLocator()->begin_findObjectById(
_ref->getIdentity(),
newCallback_Locator_findObjectById(static_cast<LocatorInfo::Request*>(this),
&LocatorInfo::Request::response,
&LocatorInfo::Request::exception));
+#endif
}
catch(const Ice::Exception& ex)
{
@@ -70,11 +91,31 @@ public:
{
try
{
+#ifdef ICE_CPP11_MAPPING
+ _locatorInfo->getLocator()->findAdapterById_async(
+ _ref->getAdapterId(),
+ [this](const Ice::ObjectPrxPtr& object)
+ {
+ this->response(object);
+ },
+ [this](exception_ptr e)
+ {
+ try
+ {
+ rethrow_exception(e);
+ }
+ catch(const UserException& ex)
+ {
+ this->exception(ex);
+ }
+ });
+#else
_locatorInfo->getLocator()->begin_findAdapterById(
_ref->getAdapterId(),
newCallback_Locator_findAdapterById(static_cast<LocatorInfo::Request*>(this),
&LocatorInfo::Request::response,
&LocatorInfo::Request::exception));
+#endif
}
catch(const Ice::Exception& ex)
{
@@ -96,8 +137,11 @@ IceInternal::LocatorManager::destroy()
{
IceUtil::Mutex::Lock sync(*this);
- for_each(_table.begin(), _table.end(), Ice::secondVoidMemFun<const LocatorPrx, LocatorInfo>(&LocatorInfo::destroy));
-
+#ifdef ICE_CPP11_MAPPING
+ for_each(_table.begin(), _table.end(), [](auto it){ it.second->destroy(); });
+#else
+ for_each(_table.begin(), _table.end(), Ice::secondVoidMemFun<const LocatorPrxPtr, LocatorInfo>(&LocatorInfo::destroy));
+#endif
_table.clear();
_tableHint = _table.end();
@@ -105,14 +149,14 @@ IceInternal::LocatorManager::destroy()
}
LocatorInfoPtr
-IceInternal::LocatorManager::get(const LocatorPrx& loc)
+IceInternal::LocatorManager::get(const LocatorPrxPtr& loc)
{
if(!loc)
{
return 0;
}
- LocatorPrx locator = LocatorPrx::uncheckedCast(loc->ice_locator(0)); // The locator can't be located.
+ LocatorPrxPtr locator = ICE_UNCHECKED_CAST(LocatorPrx, loc->ice_locator(0)); // The locator can't be located.
//
// TODO: reap unused locator info objects?
@@ -120,7 +164,7 @@ IceInternal::LocatorManager::get(const LocatorPrx& loc)
IceUtil::Mutex::Lock sync(*this);
- map<LocatorPrx, LocatorInfoPtr>::iterator p = _table.end();
+ map<LocatorPrxPtr, LocatorInfoPtr>::iterator p = _table.end();
if(_tableHint != _table.end())
{
@@ -152,7 +196,7 @@ IceInternal::LocatorManager::get(const LocatorPrx& loc)
}
_tableHint = _table.insert(_tableHint,
- pair<const LocatorPrx, LocatorInfoPtr>(locator,
+ pair<const LocatorPrxPtr, LocatorInfoPtr>(locator,
new LocatorInfo(locator, t->second,
_background)));
}
@@ -301,7 +345,7 @@ IceInternal::LocatorTable::checkTTL(const IceUtil::Time& time, int ttl) const
}
void
-IceInternal::LocatorInfo::RequestCallback::response(const LocatorInfoPtr& locatorInfo, const Ice::ObjectPrx& proxy)
+IceInternal::LocatorInfo::RequestCallback::response(const LocatorInfoPtr& locatorInfo, const Ice::ObjectPrxPtr& proxy)
{
vector<EndpointIPtr> endpoints;
if(proxy)
@@ -467,7 +511,7 @@ IceInternal::LocatorInfo::Request::Request(const LocatorInfoPtr& locatorInfo, co
}
void
-IceInternal::LocatorInfo::Request::response(const Ice::ObjectPrx& proxy)
+IceInternal::LocatorInfo::Request::response(const Ice::ObjectPrxPtr& proxy)
{
{
IceUtil::Monitor<IceUtil::Mutex>::Lock sync(_monitor);
@@ -497,7 +541,7 @@ IceInternal::LocatorInfo::Request::exception(const Ice::Exception& ex)
}
}
-IceInternal::LocatorInfo::LocatorInfo(const LocatorPrx& locator, const LocatorTablePtr& table, bool background) :
+IceInternal::LocatorInfo::LocatorInfo(const LocatorPrxPtr& locator, const LocatorTablePtr& table, bool background) :
_locator(locator),
_table(table),
_background(background)
@@ -518,22 +562,34 @@ IceInternal::LocatorInfo::destroy()
bool
IceInternal::LocatorInfo::operator==(const LocatorInfo& rhs) const
{
+#ifdef ICE_CPP11_MAPPING
+ return Ice::targetEquals(_locator, rhs._locator);
+#else
return _locator == rhs._locator;
+#endif
}
bool
IceInternal::LocatorInfo::operator!=(const LocatorInfo& rhs) const
{
+#ifdef ICE_CPP11_MAPPING
+ return !Ice::targetEquals(_locator, rhs._locator);
+#else
return _locator != rhs._locator;
+#endif
}
bool
IceInternal::LocatorInfo::operator<(const LocatorInfo& rhs) const
{
+#ifdef ICE_CPP11_MAPPING
+ return Ice::targetLess(_locator, rhs._locator);
+#else
return _locator < rhs._locator;
+#endif
}
-LocatorRegistryPrx
+LocatorRegistryPrxPtr
IceInternal::LocatorInfo::getLocatorRegistry()
{
{
@@ -547,7 +603,7 @@ IceInternal::LocatorInfo::getLocatorRegistry()
//
// Do not make locator calls from within sync.
//
- LocatorRegistryPrx locatorRegistry = _locator->getRegistry();
+ LocatorRegistryPrxPtr locatorRegistry = _locator->getRegistry();
if(!locatorRegistry)
{
return 0;
@@ -877,7 +933,7 @@ IceInternal::LocatorInfo::getObjectRequest(const ReferencePtr& ref)
void
IceInternal::LocatorInfo::finishRequest(const ReferencePtr& ref,
const vector<ReferencePtr>& wellKnownRefs,
- const Ice::ObjectPrx& proxy,
+ const Ice::ObjectPrxPtr& proxy,
bool notRegistered)
{
if(!proxy || proxy->__reference()->isIndirect())
diff --git a/cpp/src/Ice/LocatorInfo.h b/cpp/src/Ice/LocatorInfo.h
index b283a66bb8b..c719eea134d 100644
--- a/cpp/src/Ice/LocatorInfo.h
+++ b/cpp/src/Ice/LocatorInfo.h
@@ -39,14 +39,14 @@ public:
// Returns locator info for a given locator. Automatically creates
// the locator info if it doesn't exist yet.
//
- LocatorInfoPtr get(const Ice::LocatorPrx&);
+ LocatorInfoPtr get(const Ice::LocatorPrxPtr&);
private:
const bool _background;
- std::map<Ice::LocatorPrx, LocatorInfoPtr> _table;
- std::map<Ice::LocatorPrx, LocatorInfoPtr>::iterator _tableHint;
+ std::map<Ice::LocatorPrxPtr, LocatorInfoPtr> _table;
+ std::map<Ice::LocatorPrxPtr, LocatorInfoPtr>::iterator _tableHint;
std::map<std::pair<Ice::Identity, Ice::EncodingVersion>, LocatorTablePtr> _locatorTables;
};
@@ -94,7 +94,7 @@ public:
RequestCallback(const ReferencePtr&, int, const GetEndpointsCallbackPtr&);
- void response(const LocatorInfoPtr&, const Ice::ObjectPrx&);
+ void response(const LocatorInfoPtr&, const Ice::ObjectPrxPtr&);
void exception(const LocatorInfoPtr&, const Ice::Exception&);
private:
@@ -112,7 +112,7 @@ public:
void addCallback(const ReferencePtr&, const ReferencePtr&, int, const GetEndpointsCallbackPtr&);
std::vector<EndpointIPtr> getEndpoints(const ReferencePtr&, const ReferencePtr&, int, bool&);
- void response(const Ice::ObjectPrx&);
+ void response(const Ice::ObjectPrxPtr&);
void exception(const Ice::Exception&);
protected:
@@ -131,12 +131,12 @@ public:
std::vector<ReferencePtr> _wellKnownRefs;
bool _sent;
bool _response;
- Ice::ObjectPrx _proxy;
+ Ice::ObjectPrxPtr _proxy;
IceUtil::UniquePtr<Ice::Exception> _exception;
};
typedef IceUtil::Handle<Request> RequestPtr;
- LocatorInfo(const Ice::LocatorPrx&, const LocatorTablePtr&, bool);
+ LocatorInfo(const Ice::LocatorPrxPtr&, const LocatorTablePtr&, bool);
void destroy();
@@ -144,14 +144,14 @@ public:
bool operator!=(const LocatorInfo&) const;
bool operator<(const LocatorInfo&) const;
- const Ice::LocatorPrx& getLocator() const
+ const Ice::LocatorPrxPtr& getLocator() const
{
//
// No mutex lock necessary, _locator is immutable.
//
return _locator;
}
- Ice::LocatorRegistryPrx getLocatorRegistry();
+ Ice::LocatorRegistryPrxPtr getLocatorRegistry();
std::vector<EndpointIPtr> getEndpoints(const ReferencePtr& ref, int ttl, bool& cached)
{
@@ -176,12 +176,12 @@ private:
RequestPtr getAdapterRequest(const ReferencePtr&);
RequestPtr getObjectRequest(const ReferencePtr&);
- void finishRequest(const ReferencePtr&, const std::vector<ReferencePtr>&, const Ice::ObjectPrx&, bool);
+ void finishRequest(const ReferencePtr&, const std::vector<ReferencePtr>&, const Ice::ObjectPrxPtr&, bool);
friend class Request;
friend class RequestCallback;
- const Ice::LocatorPrx _locator;
- Ice::LocatorRegistryPrx _locatorRegistry;
+ const Ice::LocatorPrxPtr _locator;
+ Ice::LocatorRegistryPrxPtr _locatorRegistry;
const LocatorTablePtr _table;
const bool _background;
diff --git a/cpp/src/Ice/LoggerAdminI.cpp b/cpp/src/Ice/LoggerAdminI.cpp
index b48b40be259..64c68dee606 100644
--- a/cpp/src/Ice/LoggerAdminI.cpp
+++ b/cpp/src/Ice/LoggerAdminI.cpp
@@ -32,19 +32,19 @@ class LoggerAdminI : public Ice::LoggerAdmin
public:
LoggerAdminI(const PropertiesPtr&);
-
- virtual void attachRemoteLogger(const RemoteLoggerPrx&, const LogMessageTypeSeq&,
+
+ virtual void attachRemoteLogger(const RemoteLoggerPrxPtr&, const LogMessageTypeSeq&,
const StringSeq&, Int, const Current&);
-
- virtual bool detachRemoteLogger(const RemoteLoggerPrx&, const Current&);
-
+
+ virtual bool detachRemoteLogger(const RemoteLoggerPrxPtr&, const Current&);
+
virtual LogMessageSeq getLog(const LogMessageTypeSeq&, const StringSeq&, Int, string&, const Current&);
void destroy();
- vector<RemoteLoggerPrx> log(const LogMessage&);
+ vector<RemoteLoggerPrxPtr> log(const LogMessage&);
- void deadRemoteLogger(const RemoteLoggerPrx&, const LoggerPtr&, const LocalException&, const string&);
+ void deadRemoteLogger(const RemoteLoggerPrxPtr&, const LoggerPtr&, const LocalException&, const string&);
const int getTraceLevel() const
{
@@ -53,9 +53,11 @@ public:
private:
- bool removeRemoteLogger(const RemoteLoggerPrx&);
-
+ bool removeRemoteLogger(const RemoteLoggerPrxPtr&);
+
+#ifndef ICE_CPP11_MAPPING // C++98 mapping begin_init callback
void initCompleted(const AsyncResultPtr&);
+#endif
IceUtil::Mutex _mutex;
list<LogMessage> _queue;
@@ -70,7 +72,7 @@ private:
struct ObjectIdentityCompare
{
- bool operator()(const RemoteLoggerPrx& lhs, const RemoteLoggerPrx& rhs) const
+ bool operator()(const RemoteLoggerPrxPtr& lhs, const RemoteLoggerPrxPtr& rhs) const
{
//
// Caller should make sure that proxies are never null
@@ -93,7 +95,7 @@ private:
const set<string> traceCategories;
};
- typedef map<RemoteLoggerPrx, Filters, ObjectIdentityCompare> RemoteLoggerMap;
+ typedef map<RemoteLoggerPrxPtr, Filters, ObjectIdentityCompare> RemoteLoggerMap;
struct GetRemoteLoggerMapKey
{
@@ -108,29 +110,29 @@ private:
CommunicatorPtr _sendLogCommunicator;
bool _destroyed;
};
-typedef IceUtil::Handle<LoggerAdminI> LoggerAdminIPtr;
+ICE_DEFINE_PTR(LoggerAdminIPtr, LoggerAdminI);
class Job : public IceUtil::Shared
{
public:
- Job(const vector<RemoteLoggerPrx>& r, const LogMessage& l) :
+ Job(const vector<RemoteLoggerPrxPtr>& r, const LogMessage& l) :
remoteLoggers(r),
logMessage(l)
{
}
- const vector<RemoteLoggerPrx> remoteLoggers;
+ const vector<RemoteLoggerPrxPtr> remoteLoggers;
const LogMessage logMessage;
};
typedef IceUtil::Handle<Job> JobPtr;
-class LoggerAdminLoggerI : public IceInternal::LoggerAdminLogger
+class LoggerAdminLoggerI : public ICE_ENABLE_SHARED_FROM_THIS(LoggerAdminLoggerI), public IceInternal::LoggerAdminLogger
{
public:
-
+
LoggerAdminLoggerI(const PropertiesPtr&, const LoggerPtr&);
virtual void print(const std::string&);
@@ -141,22 +143,23 @@ public:
virtual LoggerPtr cloneWithPrefix(const std::string&);
virtual ObjectPtr getFacet() const;
-
+
virtual void destroy();
const LoggerPtr& getLocalLogger() const
{
return _localLogger;
}
-
+
void run();
private:
void log(const LogMessage&);
-
+#ifndef ICE_CPP11_MAPPING // C++98 mapping begin_log callback
void logCompleted(const AsyncResultPtr&);
-
+#endif
+
LoggerPtr _localLogger;
const LoggerAdminIPtr _loggerAdmin;
@@ -164,9 +167,9 @@ private:
bool _destroyed;
IceUtil::ThreadPtr _sendLogThread;
- std::deque<JobPtr> _jobQueue;
+ std::deque<JobPtr> _jobQueue;
};
-typedef IceUtil::Handle<LoggerAdminLoggerI> LoggerAdminLoggerIPtr;
+ICE_DEFINE_PTR(LoggerAdminLoggerIPtr, LoggerAdminLoggerI);
class SendLogThread : public IceUtil::Thread
@@ -195,7 +198,7 @@ filterLogMessages(LogMessageSeq& logMessages, const set<LogMessageType>& message
const set<string>& traceCategories, Int messageMax)
{
assert(!logMessages.empty() && messageMax != 0);
-
+
//
// Filter only if one of the 3 filters is set; messageMax < 0 means "give me all"
// that match the other filters, if any.
@@ -209,7 +212,7 @@ filterLogMessages(LogMessageSeq& logMessages, const set<LogMessageType>& message
bool keepIt = false;
if(messageTypes.empty() || messageTypes.count(p->type) != 0)
{
- if(p->type != TraceMessage || traceCategories.empty() ||
+ if(p->type != ICE_ENUM(LogMessageType, TraceMessage) || traceCategories.empty() ||
traceCategories.count(p->traceCategory) != 0)
{
keepIt = true;
@@ -246,15 +249,15 @@ filterLogMessages(LogMessageSeq& logMessages, const set<LogMessageType>& message
//
// Change this proxy's communicator, while keeping its invocation timeout
//
-RemoteLoggerPrx
-changeCommunicator(const RemoteLoggerPrx& prx, const CommunicatorPtr& communicator)
+RemoteLoggerPrxPtr
+changeCommunicator(const RemoteLoggerPrxPtr& prx, const CommunicatorPtr& communicator)
{
if(prx == 0)
{
return 0;
}
- RemoteLoggerPrx result = RemoteLoggerPrx::uncheckedCast(communicator->stringToProxy(prx->ice_toString()));
+ RemoteLoggerPrxPtr result = ICE_UNCHECKED_CAST(RemoteLoggerPrx, communicator->stringToProxy(prx->ice_toString()));
return result->ice_invocationTimeout(prx->ice_getInvocationTimeout());
}
@@ -312,7 +315,7 @@ LoggerAdminI::LoggerAdminI(const PropertiesPtr& props) :
_logCount(0),
_maxLogCount(props->getPropertyAsIntWithDefault("Ice.Admin.Logger.KeepLogs", 100)),
_traceCount(0),
- _maxTraceCount(props->getPropertyAsIntWithDefault("Ice.Admin.Logger.KeepTraces", 100)),
+ _maxTraceCount(props->getPropertyAsIntWithDefault("Ice.Admin.Logger.KeepTraces", 100)),
_traceLevel(props->getPropertyAsInt("Ice.Trace.Admin.Logger")),
_destroyed(false)
{
@@ -321,7 +324,7 @@ LoggerAdminI::LoggerAdminI(const PropertiesPtr& props) :
}
void
-LoggerAdminI::attachRemoteLogger(const RemoteLoggerPrx& prx,
+LoggerAdminI::attachRemoteLogger(const RemoteLoggerPrxPtr& prx,
const LogMessageTypeSeq& messageTypes,
const StringSeq& categories,
Int messageMax,
@@ -331,13 +334,13 @@ LoggerAdminI::attachRemoteLogger(const RemoteLoggerPrx& prx,
{
return; // can't send this null RemoteLogger anything!
}
-
+
//
// In C++, LoggerAdminI does not keep a "logger" data member to avoid a hard-to-break circular
// reference, so we retrieve the logger from Current
//
-
- LoggerAdminLoggerIPtr logger = LoggerAdminLoggerIPtr::dynamicCast(current.adapter->getCommunicator()->getLogger());
+
+ LoggerAdminLoggerIPtr logger = ICE_DYNAMIC_CAST(LoggerAdminLoggerI, current.adapter->getCommunicator()->getLogger());
if(!logger)
{
// Our logger is not installed - must be a bug
@@ -345,7 +348,7 @@ LoggerAdminI::attachRemoteLogger(const RemoteLoggerPrx& prx,
return;
}
- RemoteLoggerPrx remoteLogger = prx->ice_twoway();
+ RemoteLoggerPrxPtr remoteLogger = prx->ice_twoway();
Filters filters(messageTypes, categories);
LogMessageSeq initLogMessages;
@@ -391,8 +394,37 @@ LoggerAdminI::attachRemoteLogger(const RemoteLoggerPrx& prx,
filterLogMessages(initLogMessages, filters.messageTypes, filters.traceCategories, messageMax);
}
+#ifdef ICE_CPP11_MAPPING
+ try
+ {
+ remoteLogger->init_async(logger->getPrefix(), initLogMessages,
+ [this, logger, remoteLogger]()
+ {
+ if(this->_traceLevel > 1)
+ {
+ Trace trace(logger, traceCategory);
+ trace << "init on `" << remoteLogger << "' completed successfully";
+ }
+ },
+ [this, logger, remoteLogger](exception_ptr e)
+ {
+ try
+ {
+ rethrow_exception(e);
+ }
+ catch(const Ice::LocalException& e)
+ {
+ this->deadRemoteLogger(remoteLogger, logger, e, "init");
+ }
+ });
+ }
+ catch(const LocalException& ex)
+ {
+ deadRemoteLogger(remoteLogger, logger, ex, "init");
+ throw;
+ }
+#else
CallbackPtr initCompletedCb = newCallback(this, &LoggerAdminI::initCompleted);
-
try
{
remoteLogger->begin_init(logger->getPrefix(), initLogMessages, initCompletedCb, logger);
@@ -402,10 +434,11 @@ LoggerAdminI::attachRemoteLogger(const RemoteLoggerPrx& prx,
deadRemoteLogger(remoteLogger, logger, ex, "init");
throw;
}
+#endif
}
bool
-LoggerAdminI::detachRemoteLogger(const RemoteLoggerPrx& remoteLogger, const Current& current)
+LoggerAdminI::detachRemoteLogger(const RemoteLoggerPrxPtr& remoteLogger, const Current& current)
{
if(remoteLogger == 0)
{
@@ -429,11 +462,11 @@ LoggerAdminI::detachRemoteLogger(const RemoteLoggerPrx& remoteLogger, const Curr
trace << "cannot detach `" << remoteLogger << "': not found";
}
}
-
+
return found;
}
-LogMessageSeq
+LogMessageSeq
LoggerAdminI::getLog(const LogMessageTypeSeq& messageTypes, const StringSeq& categories,
Int messageMax, string& prefix, const Current& current)
{
@@ -449,13 +482,13 @@ LoggerAdminI::getLog(const LogMessageTypeSeq& messageTypes, const StringSeq& cat
LoggerPtr logger = current.adapter->getCommunicator()->getLogger();
prefix = logger->getPrefix();
-
+
if(!logMessages.empty())
{
Filters filters(messageTypes, categories);
filterLogMessages(logMessages, filters.messageTypes, filters.traceCategories, messageMax);
}
-
+
return logMessages;
}
@@ -467,14 +500,14 @@ LoggerAdminI::destroy()
IceUtil::Mutex::Lock lock(_mutex);
if(!_destroyed)
{
- _destroyed = true;
+ _destroyed = true;
sendLogCommunicator = _sendLogCommunicator;
_sendLogCommunicator = 0;
}
}
-
+
//
- // Destroy outside lock to avoid deadlock when there are outstanding two-way log calls sent to
+ // Destroy outside lock to avoid deadlock when there are outstanding two-way log calls sent to
// remote logggers
//
if(sendLogCommunicator)
@@ -483,22 +516,22 @@ LoggerAdminI::destroy()
}
}
-vector<RemoteLoggerPrx>
+vector<RemoteLoggerPrxPtr>
LoggerAdminI::log(const LogMessage& logMessage)
{
- vector<RemoteLoggerPrx> remoteLoggers;
+ vector<RemoteLoggerPrxPtr> remoteLoggers;
IceUtil::Mutex::Lock lock(_mutex);
//
// Put message in _queue
//
- if((logMessage.type != TraceMessage && _maxLogCount > 0) ||
- (logMessage.type == TraceMessage && _maxTraceCount > 0))
+ if((logMessage.type != ICE_ENUM(LogMessageType, TraceMessage) && _maxLogCount > 0) ||
+ (logMessage.type == ICE_ENUM(LogMessageType, TraceMessage) && _maxTraceCount > 0))
{
list<LogMessage>::iterator p = _queue.insert(_queue.end(), logMessage);
- if(logMessage.type != TraceMessage)
+ if(logMessage.type != ICE_ENUM(LogMessageType, TraceMessage))
{
assert(_maxLogCount > 0);
if(_logCount == _maxLogCount)
@@ -508,7 +541,7 @@ LoggerAdminI::log(const LogMessage& logMessage)
//
assert(_oldestLog != _queue.end());
_oldestLog = _queue.erase(_oldestLog);
- while(_oldestLog != _queue.end() && _oldestLog->type == TraceMessage)
+ while(_oldestLog != _queue.end() && _oldestLog->type == ICE_ENUM(LogMessageType, TraceMessage))
{
_oldestLog++;
}
@@ -534,7 +567,7 @@ LoggerAdminI::log(const LogMessage& logMessage)
//
assert(_oldestTrace != _queue.end());
_oldestTrace = _queue.erase(_oldestTrace);
- while(_oldestTrace != _queue.end() && _oldestTrace->type != TraceMessage)
+ while(_oldestTrace != _queue.end() && _oldestTrace->type != ICE_ENUM(LogMessageType, TraceMessage))
{
_oldestTrace++;
}
@@ -560,7 +593,7 @@ LoggerAdminI::log(const LogMessage& logMessage)
if(filters.messageTypes.empty() || filters.messageTypes.count(logMessage.type) != 0)
{
- if(logMessage.type != TraceMessage || filters.traceCategories.empty() ||
+ if(logMessage.type != ICE_ENUM(LogMessageType, TraceMessage) || filters.traceCategories.empty() ||
filters.traceCategories.count(logMessage.traceCategory) != 0)
{
remoteLoggers.push_back(p->first);
@@ -572,7 +605,7 @@ LoggerAdminI::log(const LogMessage& logMessage)
}
void
-LoggerAdminI::deadRemoteLogger(const RemoteLoggerPrx& remoteLogger,
+LoggerAdminI::deadRemoteLogger(const RemoteLoggerPrxPtr& remoteLogger,
const LoggerPtr& logger,
const LocalException& ex,
const string& operation)
@@ -591,39 +624,44 @@ LoggerAdminI::deadRemoteLogger(const RemoteLoggerPrx& remoteLogger,
}
bool
-LoggerAdminI::removeRemoteLogger(const RemoteLoggerPrx& remoteLogger)
+LoggerAdminI::removeRemoteLogger(const RemoteLoggerPrxPtr& remoteLogger)
{
IceUtil::Mutex::Lock lock(_mutex);
return _remoteLoggerMap.erase(remoteLogger) > 0;
}
+#ifndef ICE_CPP11_MAPPING
+//
+// begin_init callback method for C++98 mapping
+//
void
LoggerAdminI::initCompleted(const AsyncResultPtr& r)
{
- RemoteLoggerPrx remoteLogger = RemoteLoggerPrx::uncheckedCast(r->getProxy());
-
-try
+ RemoteLoggerPrxPtr remoteLogger = ICE_UNCHECKED_CAST(RemoteLoggerPrx, r->getProxy());
+
+ try
{
remoteLogger->end_init(r);
if(_traceLevel > 1)
{
- LoggerPtr logger = LoggerPtr::dynamicCast(r->getCookie());
+ LoggerPtr logger = ICE_DYNAMIC_CAST(Logger, r->getCookie());
Trace trace(logger, traceCategory);
trace << r->getOperation() << " on `" << remoteLogger << "' completed successfully";
}
}
catch(const LocalException& ex)
{
- deadRemoteLogger(remoteLogger, LoggerPtr::dynamicCast(r->getCookie()), ex, r->getOperation());
+ deadRemoteLogger(remoteLogger, ICE_DYNAMIC_CAST(Logger, r->getCookie()), ex, r->getOperation());
}
}
+#endif
//
// LoggerAdminLoggerI
//
-LoggerAdminLoggerI::LoggerAdminLoggerI(const PropertiesPtr& props,
+LoggerAdminLoggerI::LoggerAdminLoggerI(const PropertiesPtr& props,
const LoggerPtr& localLogger) :
_loggerAdmin(new LoggerAdminI(props)),
_destroyed(false)
@@ -648,7 +686,7 @@ LoggerAdminLoggerI::LoggerAdminLoggerI(const PropertiesPtr& props,
void
LoggerAdminLoggerI::print(const string& message)
{
- LogMessage logMessage = { PrintMessage, IceUtil::Time::now().toMicroSeconds(), "", message };
+ LogMessage logMessage = { ICE_ENUM(LogMessageType, PrintMessage), IceUtil::Time::now().toMicroSeconds(), "", message };
_localLogger->print(message);
log(logMessage);
@@ -657,7 +695,7 @@ LoggerAdminLoggerI::print(const string& message)
void
LoggerAdminLoggerI::trace(const string& category, const string& message)
{
- LogMessage logMessage = { TraceMessage, IceUtil::Time::now().toMicroSeconds(), category, message };
+ LogMessage logMessage = { ICE_ENUM(LogMessageType, TraceMessage), IceUtil::Time::now().toMicroSeconds(), category, message };
_localLogger->trace(category, message);
log(logMessage);
@@ -666,7 +704,7 @@ LoggerAdminLoggerI::trace(const string& category, const string& message)
void
LoggerAdminLoggerI::warning(const string& message)
{
- LogMessage logMessage = { WarningMessage, IceUtil::Time::now().toMicroSeconds(), "", message };
+ LogMessage logMessage = { ICE_ENUM(LogMessageType, WarningMessage), IceUtil::Time::now().toMicroSeconds(), "", message };
_localLogger->warning(message);
log(logMessage);
@@ -675,7 +713,7 @@ LoggerAdminLoggerI::warning(const string& message)
void
LoggerAdminLoggerI::error(const string& message)
{
- LogMessage logMessage = { ErrorMessage, IceUtil::Time::now().toMicroSeconds(), "", message };
+ LogMessage logMessage = { ICE_ENUM(LogMessageType, ErrorMessage), IceUtil::Time::now().toMicroSeconds(), "", message };
_localLogger->error(message);
log(logMessage);
@@ -702,7 +740,7 @@ LoggerAdminLoggerI::getFacet() const
void
LoggerAdminLoggerI::log(const LogMessage& logMessage)
{
- const vector<RemoteLoggerPrx> remoteLoggers = _loggerAdmin->log(logMessage);
+ const vector<RemoteLoggerPrxPtr> remoteLoggers = _loggerAdmin->log(logMessage);
if(!remoteLoggers.empty())
{
@@ -710,7 +748,7 @@ LoggerAdminLoggerI::log(const LogMessage& logMessage)
if(!_sendLogThread)
{
- _sendLogThread = new SendLogThread(this);
+ _sendLogThread = new SendLogThread(ICE_SHARED_FROM_THIS);
_sendLogThread->start();
}
@@ -755,7 +793,9 @@ LoggerAdminLoggerI::run()
trace << "send log thread started";
}
+#ifndef ICE_CPP11_MAPPING
CallbackPtr logCompletedCb = newCallback(this, &LoggerAdminLoggerI::logCompleted);
+#endif
for(;;)
{
@@ -774,7 +814,7 @@ LoggerAdminLoggerI::run()
_jobQueue.pop_front();
lock.release();
- for(vector<RemoteLoggerPrx>::const_iterator p = job->remoteLoggers.begin(); p != job->remoteLoggers.end(); ++p)
+ for(vector<RemoteLoggerPrxPtr>::const_iterator p = job->remoteLoggers.begin(); p != job->remoteLoggers.end(); ++p)
{
if(_loggerAdmin->getTraceLevel() > 1)
{
@@ -784,10 +824,38 @@ LoggerAdminLoggerI::run()
try
{
+#ifdef ICE_CPP11_MAPPING
+ RemoteLoggerPrxPtr remoteLogger = *p;
+ remoteLogger->log_async(job->logMessage,
+ [this, remoteLogger]()
+ {
+ if(this->_loggerAdmin->getTraceLevel() > 1)
+ {
+ Trace trace(_localLogger, traceCategory);
+ trace << "log on `" << remoteLogger << "' completed successfully";
+ }
+ },
+ [this, remoteLogger](exception_ptr e)
+ {
+ try
+ {
+ rethrow_exception(e);
+ }
+ catch(const CommunicatorDestroyedException&)
+ {
+ // expected if there are outstanding calls during communicator destruction
+ }
+ catch(const LocalException& ex)
+ {
+ this->_loggerAdmin->deadRemoteLogger(remoteLogger, _localLogger, ex, "log");
+ }
+ });
+#else
//
// *p is a proxy associated with the _sendLogCommunicator
//
(*p)->begin_log(job->logMessage, logCompletedCb);
+#endif
}
catch(const LocalException& ex)
{
@@ -803,12 +871,16 @@ LoggerAdminLoggerI::run()
}
}
+#ifndef ICE_CPP11_MAPPING
+//
+// begin_log callback for C++98 mapping
+//
void
LoggerAdminLoggerI::logCompleted(const AsyncResultPtr& r)
{
- RemoteLoggerPrx remoteLogger = RemoteLoggerPrx::uncheckedCast(r->getProxy());
-
- try
+ RemoteLoggerPrxPtr remoteLogger = ICE_UNCHECKED_CAST(RemoteLoggerPrx, r->getProxy());
+
+ try
{
remoteLogger->end_log(r);
@@ -827,6 +899,7 @@ LoggerAdminLoggerI::logCompleted(const AsyncResultPtr& r)
_loggerAdmin->deadRemoteLogger(remoteLogger, _localLogger, ex, r->getOperation());
}
}
+#endif
//
// SendLogThread
@@ -852,11 +925,11 @@ SendLogThread::run()
namespace IceInternal
{
-LoggerAdminLoggerPtr
-createLoggerAdminLogger(const PropertiesPtr& props,
+LoggerAdminLoggerPtr
+createLoggerAdminLogger(const PropertiesPtr& props,
const LoggerPtr& localLogger)
{
- return new LoggerAdminLoggerI(props, localLogger);
+ return ICE_MAKE_SHARED(LoggerAdminLoggerI, props, localLogger);
}
}
diff --git a/cpp/src/Ice/LoggerAdminI.h b/cpp/src/Ice/LoggerAdminI.h
index 3d8ce595c53..68796df1ff8 100644
--- a/cpp/src/Ice/LoggerAdminI.h
+++ b/cpp/src/Ice/LoggerAdminI.h
@@ -34,11 +34,11 @@ public:
// Destroy this logger, in particular join any thread
// that this logger may have started
//
- virtual void destroy() = 0;
+ virtual void destroy() = 0;
};
-typedef Handle<LoggerAdminLogger> LoggerAdminLoggerPtr;
+ICE_DEFINE_PTR(LoggerAdminLoggerPtr, LoggerAdminLogger);
-LoggerAdminLoggerPtr
+LoggerAdminLoggerPtr
createLoggerAdminLogger(const Ice::PropertiesPtr&, const Ice::LoggerPtr&);
}
diff --git a/cpp/src/Ice/LoggerI.cpp b/cpp/src/Ice/LoggerI.cpp
index fcc3ac1d79c..2ecdd689c5e 100644
--- a/cpp/src/Ice/LoggerI.cpp
+++ b/cpp/src/Ice/LoggerI.cpp
@@ -122,7 +122,7 @@ Ice::LoggerI::getPrefix()
LoggerPtr
Ice::LoggerI::cloneWithPrefix(const std::string& prefix)
{
- return new LoggerI(prefix, _file, _convert, _converter);
+ return ICE_MAKE_SHARED(LoggerI, prefix, _file, _convert, _converter);
}
void
diff --git a/cpp/src/Ice/LoggerI.h b/cpp/src/Ice/LoggerI.h
index 441b016a08e..d5d6fb0658f 100644
--- a/cpp/src/Ice/LoggerI.h
+++ b/cpp/src/Ice/LoggerI.h
@@ -49,8 +49,7 @@ private:
#endif
};
-
-typedef IceUtil::Handle<LoggerI> LoggerIPtr;
+ICE_DEFINE_PTR(LoggerIPtr, LoggerI);
}
diff --git a/cpp/src/Ice/Makefile b/cpp/src/Ice/Makefile
index de6f29a4b6f..6260ba1a674 100644
--- a/cpp/src/Ice/Makefile
+++ b/cpp/src/Ice/Makefile
@@ -38,7 +38,6 @@ SLICE_OBJS = BuiltinSequences.o \
ObjectAdapter.o \
ObjectAdapterF.o \
ObjectFactory.o \
- ObjectFactoryF.o \
Plugin.o \
PluginF.o \
Process.o \
@@ -142,6 +141,7 @@ OBJS = Acceptor.o \
UdpConnector.o \
UdpEndpointI.o \
UdpTransceiver.o \
+ Value.o \
WSAcceptor.o \
WSConnector.o \
WSEndpoint.o \
diff --git a/cpp/src/Ice/Makefile.mak b/cpp/src/Ice/Makefile.mak
index bdae62218d4..db8cddc15ff 100644
--- a/cpp/src/Ice/Makefile.mak
+++ b/cpp/src/Ice/Makefile.mak
@@ -38,7 +38,6 @@ SLICE_OBJS = .\BuiltinSequences.obj \
.\ObjectAdapter.obj \
.\ObjectAdapterF.obj \
.\ObjectFactory.obj \
- .\ObjectFactoryF.obj \
.\Plugin.obj \
.\PluginF.obj \
.\Process.obj \
@@ -52,6 +51,7 @@ SLICE_OBJS = .\BuiltinSequences.obj \
.\ServantLocator.obj \
.\ServantLocatorF.obj \
.\SliceChecksumDict.obj \
+ .\Value.obj \
.\Version.obj
WINDOWS_OBJS = .\DLLMain.obj
diff --git a/cpp/src/Ice/MetricsAdminI.cpp b/cpp/src/Ice/MetricsAdminI.cpp
index d6020d3940c..a80e1a7c3ab 100644
--- a/cpp/src/Ice/MetricsAdminI.cpp
+++ b/cpp/src/Ice/MetricsAdminI.cpp
@@ -80,7 +80,7 @@ parseRule(const PropertiesPtr& properties, const string& name)
{
try
{
- regexps.push_back(new MetricsMapI::RegExp(p->first.substr(name.length() + 1), p->second));
+ regexps.push_back(ICE_MAKE_SHARED(MetricsMapI::RegExp, p->first.substr(name.length() + 1), p->second));
}
catch(const std::exception&)
{
@@ -99,7 +99,7 @@ MetricsMapI::RegExp::RegExp(const string& attribute, const string& regexp) : _at
// No regexp support with MinGW, when MinGW C++11 mode is not experimental
// we can use std::regex.
//
-#elif !defined(ICE_CPP11_REGEXP)
+#elif !defined(ICE_CPP11_COMPILER_REGEXP)
if(regcomp(&_preg, regexp.c_str(), REG_EXTENDED | REG_NOSUB) != 0)
{
throw SyscallException(__FILE__, __LINE__);
@@ -120,7 +120,7 @@ MetricsMapI::RegExp::~RegExp()
// No regexp support with MinGW, when MinGW C++11 mode is not experimental
// we can use std::regex.
//
-#elif !defined(ICE_CPP11_REGEXP)
+#elif !defined(ICE_CPP11_COMPILER_REGEXP)
regfree(&_preg);
#endif
}
@@ -134,7 +134,7 @@ MetricsMapI::RegExp::match(const string& value)
// we can use std::regex.
//
return false;
-#elif !defined(ICE_CPP11_REGEXP)
+#elif !defined(ICE_CPP11_COMPILER_REGEXP)
return regexec(&_preg, value.c_str(), 0, 0, 0) == 0;
#else
# if _MSC_VER < 1600
@@ -439,7 +439,7 @@ MetricsAdminI::updateViews()
map<string, MetricsViewIPtr>::const_iterator q = _views.find(viewName);
if(q == _views.end())
{
- q = views.insert(map<string, MetricsViewIPtr>::value_type(viewName, new MetricsViewI(viewName))).first;
+ q = views.insert(map<string, MetricsViewIPtr>::value_type(viewName, ICE_MAKE_SHARED(MetricsViewI, viewName))).first;
}
else
{
diff --git a/cpp/src/Ice/Object.cpp b/cpp/src/Ice/Object.cpp
index 69a17208243..14086c0d81b 100644
--- a/cpp/src/Ice/Object.cpp
+++ b/cpp/src/Ice/Object.cpp
@@ -19,13 +19,15 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
Object* Ice::upCast(Object* p) { return p; }
-void
+void
Ice::__patch(ObjectPtr& obj, const ObjectPtr& v)
{
obj = v;
}
+#endif
bool
Ice::Object::operator==(const Object& r) const
@@ -87,16 +89,6 @@ Ice::Object::ice_clone() const
return 0; // avoid warning with some compilers
}
-void
-Ice::Object::ice_preMarshal()
-{
-}
-
-void
-Ice::Object::ice_postUnmarshal()
-{
-}
-
DispatchStatus
Ice::Object::___ice_isA(Incoming& __inS, const Current& __current)
{
@@ -142,12 +134,6 @@ Ice::Object::___ice_id(Incoming& __inS, const Current& __current)
return DispatchOK;
}
-Ice::Int
-Ice::Object::ice_operationAttributes(const string&) const
-{
- return 0;
-}
-
string Ice::Object::__all[] =
{
@@ -229,6 +215,17 @@ Ice::Object::__dispatch(Incoming& in, const Current& current)
throw OperationNotExistException(__FILE__, __LINE__, current.id, current.facet, current.operation);
}
+#ifndef ICE_CPP11_MAPPING
+void
+Ice::Object::ice_preMarshal()
+{
+}
+
+void
+Ice::Object::ice_postUnmarshal()
+{
+}
+
void
Ice::Object::__write(IceInternal::BasicStream* os) const
{
@@ -266,13 +263,20 @@ Ice::Object::__writeImpl(const OutputStreamPtr&) const
{
throw MarshalException(__FILE__, __LINE__, "class was not generated with stream support");
}
-
-void
+
+void
Ice::Object::__readImpl(const InputStreamPtr&)
{
throw MarshalException(__FILE__, __LINE__, "class was not generated with stream support");
}
+Ice::Int
+Ice::Object::ice_operationAttributes(const string&) const
+{
+ return 0;
+}
+#endif
+
namespace
{
@@ -281,19 +285,26 @@ operationModeToString(OperationMode mode)
{
switch(mode)
{
- case Normal:
+ case ICE_ENUM(OperationMode, Normal):
return "::Ice::Normal";
- case Nonmutating:
+ case ICE_ENUM(OperationMode, Nonmutating):
return "::Ice::Nonmutating";
- case Idempotent:
+ case ICE_ENUM(OperationMode, Idempotent):
return "::Ice::Idempotent";
}
-
+ //
+ // This could not happen with C++11 strong type enums
+ //
+#ifndef ICE_CPP11_MAPPING
ostringstream os;
os << "unknown value (" << mode << ")";
return os.str();
+#else
+ assert(false);
+ return "";
+#endif
}
}
@@ -303,12 +314,12 @@ Ice::Object::__checkMode(OperationMode expected, OperationMode received)
{
if(expected != received)
{
- if(expected == Idempotent && received == Nonmutating)
+ if(expected == ICE_ENUM(OperationMode, Idempotent) && received == ICE_ENUM(OperationMode, Nonmutating))
{
- //
+ //
// Fine: typically an old client still using the deprecated nonmutating keyword
//
-
+
//
// Note that expected == Nonmutating and received == Idempotent is not ok:
// the server may still use the deprecated nonmutating keyword to detect updates
@@ -385,6 +396,10 @@ Ice::BlobjectArray::__dispatch(Incoming& in, const Current& current)
DispatchStatus
Ice::BlobjectAsync::__dispatch(Incoming& in, const Current& current)
{
+#ifdef ICE_CPP11_MAPPING
+ // TODO
+ return DispatchAsync;
+#else
const Byte* inEncaps;
Int sz;
in.readParamEncaps(inEncaps, sz);
@@ -402,11 +417,16 @@ Ice::BlobjectAsync::__dispatch(Incoming& in, const Current& current)
cb->ice_exception();
}
return DispatchAsync;
+#endif
}
DispatchStatus
Ice::BlobjectArrayAsync::__dispatch(Incoming& in, const Current& current)
{
+#ifdef ICE_CPP11_MAPPING
+ // TODO
+ return DispatchAsync;
+#else
pair<const Byte*, const Byte*> inEncaps;
Int sz;
in.readParamEncaps(inEncaps.first, sz);
@@ -425,16 +445,17 @@ Ice::BlobjectArrayAsync::__dispatch(Incoming& in, const Current& current)
cb->ice_exception();
}
return DispatchAsync;
+#endif
}
void
-Ice::ice_writeObject(const OutputStreamPtr& out, const ObjectPtr& p)
+Ice::ice_writeObject(const OutputStreamPtr& out, const ValuePtr& p)
{
out->write(p);
}
void
-Ice::ice_readObject(const InputStreamPtr& in, ObjectPtr& p)
+Ice::ice_readObject(const InputStreamPtr& in, ValuePtr& p)
{
in->read(p);
}
diff --git a/cpp/src/Ice/ObjectAdapterFactory.cpp b/cpp/src/Ice/ObjectAdapterFactory.cpp
index 492ba389f70..66df21a586e 100644
--- a/cpp/src/Ice/ObjectAdapterFactory.cpp
+++ b/cpp/src/Ice/ObjectAdapterFactory.cpp
@@ -18,7 +18,9 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(ObjectAdapterFactory* p) { return p; }
+#endif
void
IceInternal::ObjectAdapterFactory::shutdown()
@@ -49,7 +51,11 @@ IceInternal::ObjectAdapterFactory::shutdown()
// Deactivate outside the thread synchronization, to avoid
// deadlocks.
//
+#ifdef ICE_CPP11_MAPPING
+ for_each(adapters.begin(), adapters.end(), [](const ObjectAdapterIPtr& adapter) { adapter->deactivate(); });
+#else
for_each(adapters.begin(), adapters.end(), IceUtil::voidMemFun(&ObjectAdapter::deactivate));
+#endif
}
void
@@ -74,7 +80,11 @@ IceInternal::ObjectAdapterFactory::waitForShutdown()
//
// Now we wait for deactivation of each object adapter.
//
+#ifdef ICE_CPP11_MAPPING
+ for_each(adapters.begin(), adapters.end(), [](const ObjectAdapterIPtr& adapter) { adapter->waitForDeactivate(); });
+#else
for_each(adapters.begin(), adapters.end(), IceUtil::voidMemFun(&ObjectAdapter::waitForDeactivate));
+#endif
}
bool
@@ -103,8 +113,11 @@ IceInternal::ObjectAdapterFactory::destroy()
//
// Now we destroy each object adapter.
//
+#ifdef ICE_CPP11_MAPPING
+ for_each(adapters.begin(), adapters.end(), [](const ObjectAdapterIPtr& adapter) { adapter->destroy(); });
+#else
for_each(adapters.begin(), adapters.end(), IceUtil::voidMemFun(&ObjectAdapter::destroy));
-
+#endif
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
_adapters.clear();
@@ -120,12 +133,19 @@ IceInternal::ObjectAdapterFactory::updateObservers(void (ObjectAdapterI::*fn)())
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
adapters = _adapters;
}
-
+#ifdef ICE_CPP11_MAPPING
+ for_each(adapters.begin(), adapters.end(),
+ [fn](const ObjectAdapterIPtr& adapter)
+ {
+ (adapter.get() ->* fn)();
+ });
+#else
for_each(adapters.begin(), adapters.end(), IceUtil::voidMemFun(fn));
+#endif
}
ObjectAdapterPtr
-IceInternal::ObjectAdapterFactory::createObjectAdapter(const string& name, const RouterPrx& router)
+IceInternal::ObjectAdapterFactory::createObjectAdapter(const string& name, const RouterPrxPtr& router)
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -138,8 +158,8 @@ IceInternal::ObjectAdapterFactory::createObjectAdapter(const string& name, const
if(name.empty())
{
string uuid = IceUtil::generateUUID();
- adapter = new ObjectAdapterI(_instance, _communicator, this, uuid, true);
- adapter->initialize(0);
+ adapter = ICE_MAKE_SHARED(ObjectAdapterI, _instance, _communicator, ICE_SHARED_FROM_THIS, uuid, true);
+ adapter->initialize(ICE_NULLPTR);
}
else
{
@@ -147,7 +167,7 @@ IceInternal::ObjectAdapterFactory::createObjectAdapter(const string& name, const
{
throw AlreadyRegisteredException(__FILE__, __LINE__, "object adapter", name);
}
- adapter = new ObjectAdapterI(_instance, _communicator, this, name, false);
+ adapter = ICE_MAKE_SHARED(ObjectAdapterI, _instance, _communicator, ICE_SHARED_FROM_THIS, name, false);
adapter->initialize(router);
_adapterNamesInUse.insert(name);
}
@@ -157,7 +177,7 @@ IceInternal::ObjectAdapterFactory::createObjectAdapter(const string& name, const
}
ObjectAdapterPtr
-IceInternal::ObjectAdapterFactory::findObjectAdapter(const ObjectPrx& proxy)
+IceInternal::ObjectAdapterFactory::findObjectAdapter(const ObjectPrxPtr& proxy)
{
list<ObjectAdapterIPtr> adapters;
{
@@ -165,7 +185,7 @@ IceInternal::ObjectAdapterFactory::findObjectAdapter(const ObjectPrx& proxy)
if(!_instance)
{
- return 0;
+ return ICE_NULLPTR;
}
adapters = _adapters;
@@ -186,7 +206,7 @@ IceInternal::ObjectAdapterFactory::findObjectAdapter(const ObjectPrx& proxy)
}
}
- return 0;
+ return ICE_NULLPTR;
}
void
diff --git a/cpp/src/Ice/ObjectAdapterFactory.h b/cpp/src/Ice/ObjectAdapterFactory.h
index 6434a25b178..d9e52a9a7bb 100644
--- a/cpp/src/Ice/ObjectAdapterFactory.h
+++ b/cpp/src/Ice/ObjectAdapterFactory.h
@@ -19,7 +19,7 @@
namespace IceInternal
{
-class ObjectAdapterFactory : public ::IceUtil::Shared, public ::IceUtil::Monitor< ::IceUtil::RecMutex>
+class ObjectAdapterFactory : public ICE_ENABLE_SHARED_FROM_THIS(ObjectAdapterFactory), public ::IceUtil::Monitor< ::IceUtil::RecMutex>
{
public:
@@ -30,15 +30,16 @@ public:
void updateObservers(void (Ice::ObjectAdapterI::*)());
- ::Ice::ObjectAdapterPtr createObjectAdapter(const std::string&, const Ice::RouterPrx&);
- ::Ice::ObjectAdapterPtr findObjectAdapter(const ::Ice::ObjectPrx&);
+ ::Ice::ObjectAdapterPtr createObjectAdapter(const std::string&, const Ice::RouterPrxPtr&);
+ ::Ice::ObjectAdapterPtr findObjectAdapter(const ::Ice::ObjectPrxPtr&);
void removeObjectAdapter(const ::Ice::ObjectAdapterPtr&);
void flushAsyncBatchRequests(const CommunicatorFlushBatchAsyncPtr&) const;
-private:
-
ObjectAdapterFactory(const InstancePtr&, const ::Ice::CommunicatorPtr&);
virtual ~ObjectAdapterFactory();
+
+private:
+
friend class Instance;
InstancePtr _instance;
diff --git a/cpp/src/Ice/ObjectAdapterI.cpp b/cpp/src/Ice/ObjectAdapterI.cpp
index 220811dda07..4f30f82b3a5 100644
--- a/cpp/src/Ice/ObjectAdapterI.cpp
+++ b/cpp/src/Ice/ObjectAdapterI.cpp
@@ -95,8 +95,16 @@ Ice::ObjectAdapterI::activate()
//
if(_state != StateUninitialized)
{
+#ifdef ICE_CPP11_MAPPING
+ for_each(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
+ [](const IncomingConnectionFactoryPtr& factory)
+ {
+ factory->activate();
+ });
+#else
for_each(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
Ice::voidMemFun(&IncomingConnectionFactory::activate));
+#endif
return;
}
@@ -148,9 +156,16 @@ Ice::ObjectAdapterI::activate()
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
assert(_state == StateActivating);
+#ifdef ICE_CPP11_MAPPING
+ for_each(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
+ [](const IncomingConnectionFactoryPtr& factory)
+ {
+ factory->activate();
+ });
+#else
for_each(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
Ice::voidMemFun(&IncomingConnectionFactory::activate));
-
+#endif
_state = StateActive;
notifyAll();
}
@@ -164,8 +179,16 @@ Ice::ObjectAdapterI::hold()
checkForDeactivation();
_state = StateHeld;
+#ifdef ICE_CPP11_MAPPING
+ for_each(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
+ [](const IncomingConnectionFactoryPtr& factory)
+ {
+ factory->hold();
+ });
+#else
for_each(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
Ice::voidMemFun(&IncomingConnectionFactory::hold));
+#endif
}
void
@@ -180,8 +203,16 @@ Ice::ObjectAdapterI::waitForHold()
incomingConnectionFactories = _incomingConnectionFactories;
}
+#ifdef ICE_CPP11_MAPPING
+ for_each(incomingConnectionFactories.begin(), incomingConnectionFactories.end(),
+ [](const IncomingConnectionFactoryPtr& factory)
+ {
+ factory->waitUntilHolding();
+ });
+#else
for_each(incomingConnectionFactories.begin(), incomingConnectionFactories.end(),
Ice::constVoidMemFun(&IncomingConnectionFactory::waitUntilHolding));
+#endif
}
void
@@ -240,15 +271,23 @@ Ice::ObjectAdapterI::deactivate()
// Connection::destroy() might block when sending a CloseConnection
// message.
//
+#ifdef ICE_CPP11_MAPPING
+ for_each(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
+ [](const IncomingConnectionFactoryPtr& factory)
+ {
+ factory->destroy();
+ });
+#else
for_each(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
Ice::voidMemFun(&IncomingConnectionFactory::destroy));
+#endif
//
// Must be called outside the thread synchronization, because
// changing the object adapter might block if there are still
// requests being dispatched.
//
- _instance->outgoingConnectionFactory()->removeAdapter(this);
+ _instance->outgoingConnectionFactory()->removeAdapter(ICE_SHARED_FROM_THIS);
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -285,8 +324,16 @@ Ice::ObjectAdapterI::waitForDeactivate()
// Now we wait until all incoming connection factories are
// finished.
//
+#ifdef ICE_CPP11_MAPPING
+ for_each(incomingConnectionFactories.begin(), incomingConnectionFactories.end(),
+ [](const IncomingConnectionFactoryPtr& factory)
+ {
+ factory->waitUntilFinished();
+ });
+#else
for_each(incomingConnectionFactories.begin(), incomingConnectionFactories.end(),
Ice::voidMemFun(&IncomingConnectionFactory::waitUntilFinished));
+#endif
}
bool
@@ -343,7 +390,7 @@ Ice::ObjectAdapterI::destroy()
if(_objectAdapterFactory)
{
- _objectAdapterFactory->removeObjectAdapter(this);
+ _objectAdapterFactory->removeObjectAdapter(ICE_SHARED_FROM_THIS);
}
{
@@ -372,13 +419,13 @@ Ice::ObjectAdapterI::destroy()
}
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::add(const ObjectPtr& object, const Identity& ident)
{
return addFacet(object, ident, "");
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::addFacet(const ObjectPtr& object, const Identity& ident, const string& facet)
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -392,13 +439,13 @@ Ice::ObjectAdapterI::addFacet(const ObjectPtr& object, const Identity& ident, co
return newProxy(ident, facet);
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::addWithUUID(const ObjectPtr& object)
{
return addFacetWithUUID(object, "");
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::addFacetWithUUID(const ObjectPtr& object, const string& facet)
{
Identity ident;
@@ -484,7 +531,7 @@ Ice::ObjectAdapterI::findAllFacets(const Identity& ident) const
}
ObjectPtr
-Ice::ObjectAdapterI::findByProxy(const ObjectPrx& proxy) const
+Ice::ObjectAdapterI::findByProxy(const ObjectPrxPtr& proxy) const
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -534,7 +581,7 @@ Ice::ObjectAdapterI::findServantLocator(const string& prefix) const
return _servantManager->findServantLocator(prefix);
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::createProxy(const Identity& ident) const
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -545,7 +592,7 @@ Ice::ObjectAdapterI::createProxy(const Identity& ident) const
return newProxy(ident, "");
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::createDirectProxy(const Identity& ident) const
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -556,7 +603,7 @@ Ice::ObjectAdapterI::createDirectProxy(const Identity& ident) const
return newDirectProxy(ident, "");
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::createIndirectProxy(const Identity& ident) const
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -568,7 +615,7 @@ Ice::ObjectAdapterI::createIndirectProxy(const Identity& ident) const
}
void
-Ice::ObjectAdapterI::setLocator(const LocatorPrx& locator)
+Ice::ObjectAdapterI::setLocator(const LocatorPrxPtr& locator)
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -577,7 +624,7 @@ Ice::ObjectAdapterI::setLocator(const LocatorPrx& locator)
_locatorInfo = _instance->locatorManager()->get(locator);
}
-LocatorPrx
+LocatorPrxPtr
Ice::ObjectAdapterI::getLocator() const
{
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
@@ -635,7 +682,15 @@ Ice::ObjectAdapterI::getEndpoints() const
EndpointSeq endpoints;
transform(_incomingConnectionFactories.begin(), _incomingConnectionFactories.end(),
- back_inserter(endpoints), Ice::constMemFun(&IncomingConnectionFactory::endpoint));
+ back_inserter(endpoints),
+#ifdef ICE_CPP11_MAPPING
+ [](const IncomingConnectionFactoryPtr& factory)
+ {
+ return factory->endpoint();
+ });
+#else
+ Ice::constMemFun(&IncomingConnectionFactory::endpoint));
+#endif
return endpoints;
}
@@ -650,7 +705,7 @@ Ice::ObjectAdapterI::getPublishedEndpoints() const
}
bool
-Ice::ObjectAdapterI::isLocal(const ObjectPrx& proxy) const
+Ice::ObjectAdapterI::isLocal(const ObjectPrxPtr& proxy) const
{
//
// NOTE: it's important that isLocal() doesn't perform any blocking operations as
@@ -752,7 +807,15 @@ Ice::ObjectAdapterI::updateConnectionObservers()
IceUtil::Monitor<IceUtil::RecMutex>::Lock sync(*this);
f = _incomingConnectionFactories;
}
+#ifdef ICE_CPP11_MAPPING
+ for_each(f.begin(), f.end(),
+ [](const IncomingConnectionFactoryPtr& factory)
+ {
+ factory->updateConnectionObservers();
+ });
+#else
for_each(f.begin(), f.end(), Ice::voidMemFun(&IncomingConnectionFactory::updateConnectionObservers));
+#endif
}
void
@@ -842,7 +905,7 @@ Ice::ObjectAdapterI::getACM() const
//
Ice::ObjectAdapterI::ObjectAdapterI(const InstancePtr& instance, const CommunicatorPtr& communicator,
const ObjectAdapterFactoryPtr& objectAdapterFactory, const string& name,
- /*const RouterPrx& router,*/ bool noConfig) :
+ /*const RouterPrxPtr& router,*/ bool noConfig) :
_state(StateUninitialized),
_instance(instance),
_communicator(communicator),
@@ -856,7 +919,7 @@ Ice::ObjectAdapterI::ObjectAdapterI(const InstancePtr& instance, const Communica
}
void
-Ice::ObjectAdapterI::initialize(const RouterPrx& router)
+Ice::ObjectAdapterI::initialize(const RouterPrxPtr& router)
{
if(_noConfig)
{
@@ -944,8 +1007,8 @@ Ice::ObjectAdapterI::initialize(const RouterPrx& router)
if(!router)
{
- const_cast<RouterPrx&>(router) = RouterPrx::uncheckedCast(
- _instance->proxyFactory()->propertyToProxy(_name + ".Router"));
+ const_cast<RouterPrxPtr&>(router) = ICE_UNCHECKED_CAST(RouterPrx,
+ _instance->proxyFactory()->propertyToProxy(_name + ".Router"));
}
if(router)
{
@@ -976,7 +1039,7 @@ Ice::ObjectAdapterI::initialize(const RouterPrx& router)
// new outgoing connections to the router's client proxy will
// use this object adapter for callbacks.
//
- _routerInfo->setAdapter(this);
+ _routerInfo->setAdapter(ICE_SHARED_FROM_THIS);
//
// Also modify all existing outgoing connections to the
@@ -996,7 +1059,7 @@ Ice::ObjectAdapterI::initialize(const RouterPrx& router)
vector<EndpointIPtr> endpoints = parseEndpoints(properties->getProperty(_name + ".Endpoints"), true);
for(vector<EndpointIPtr>::iterator p = endpoints.begin(); p != endpoints.end(); ++p)
{
- IncomingConnectionFactoryPtr factory = new IncomingConnectionFactory(_instance, *p, this);
+ IncomingConnectionFactoryPtr factory = ICE_MAKE_SHARED(IncomingConnectionFactory, _instance, *p, ICE_SHARED_FROM_THIS);
factory->initialize();
_incomingConnectionFactories.push_back(factory);
}
@@ -1019,7 +1082,7 @@ Ice::ObjectAdapterI::initialize(const RouterPrx& router)
if(!properties->getProperty(_name + ".Locator").empty())
{
- setLocator(LocatorPrx::uncheckedCast(_instance->proxyFactory()->propertyToProxy(_name + ".Locator")));
+ setLocator(ICE_UNCHECKED_CAST(LocatorPrx, _instance->proxyFactory()->propertyToProxy(_name + ".Locator")));
}
else
{
@@ -1054,7 +1117,7 @@ Ice::ObjectAdapterI::~ObjectAdapterI()
}
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::newProxy(const Identity& ident, const string& facet) const
{
if(_id.empty())
@@ -1071,7 +1134,7 @@ Ice::ObjectAdapterI::newProxy(const Identity& ident, const string& facet) const
}
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::newDirectProxy(const Identity& ident, const string& facet) const
{
vector<EndpointIPtr> endpoints = _publishedEndpoints;
@@ -1090,7 +1153,7 @@ Ice::ObjectAdapterI::newDirectProxy(const Identity& ident, const string& facet)
return _instance->proxyFactory()->referenceToProxy(ref);
}
-ObjectPrx
+ObjectPrxPtr
Ice::ObjectAdapterI::newIndirectProxy(const Identity& ident, const string& facet, const string& id) const
{
//
@@ -1238,14 +1301,14 @@ ObjectAdapterI::parsePublishedEndpoints()
}
void
-ObjectAdapterI::updateLocatorRegistry(const IceInternal::LocatorInfoPtr& locatorInfo, const Ice::ObjectPrx& proxy)
+ObjectAdapterI::updateLocatorRegistry(const IceInternal::LocatorInfoPtr& locatorInfo, const Ice::ObjectPrxPtr& proxy)
{
if(_id.empty() || !locatorInfo)
{
return; // Nothing to update.
}
- LocatorRegistryPrx locatorRegistry = locatorInfo->getLocatorRegistry();
+ LocatorRegistryPrxPtr locatorRegistry = locatorInfo->getLocatorRegistry();
if(!locatorRegistry)
{
return;
diff --git a/cpp/src/Ice/ObjectAdapterI.h b/cpp/src/Ice/ObjectAdapterI.h
index 03e389ec0a1..5addbdfe846 100644
--- a/cpp/src/Ice/ObjectAdapterI.h
+++ b/cpp/src/Ice/ObjectAdapterI.h
@@ -36,9 +36,11 @@ namespace Ice
{
class ObjectAdapterI;
-typedef IceUtil::Handle<ObjectAdapterI> ObjectAdapterIPtr;
+ICE_DEFINE_PTR(ObjectAdapterIPtr, ObjectAdapterI);
-class ObjectAdapterI : public ObjectAdapter, public IceUtil::Monitor<IceUtil::RecMutex>
+class ObjectAdapterI : public ICE_ENABLE_SHARED_FROM_THIS(ObjectAdapterI),
+ public ObjectAdapter,
+ public IceUtil::Monitor<IceUtil::RecMutex>
{
public:
@@ -54,10 +56,10 @@ public:
virtual bool isDeactivated() const;
virtual void destroy();
- virtual ObjectPrx add(const ObjectPtr&, const Identity&);
- virtual ObjectPrx addFacet(const ObjectPtr&, const Identity&, const std::string&);
- virtual ObjectPrx addWithUUID(const ObjectPtr&);
- virtual ObjectPrx addFacetWithUUID(const ObjectPtr&, const std::string&);
+ virtual ObjectPrxPtr add(const ObjectPtr&, const Identity&);
+ virtual ObjectPrxPtr addFacet(const ObjectPtr&, const Identity&, const std::string&);
+ virtual ObjectPrxPtr addWithUUID(const ObjectPtr&);
+ virtual ObjectPrxPtr addFacetWithUUID(const ObjectPtr&, const std::string&);
virtual void addDefaultServant(const ObjectPtr&, const std::string&);
virtual ObjectPtr remove(const Identity&);
virtual ObjectPtr removeFacet(const Identity&, const std::string&);
@@ -66,7 +68,7 @@ public:
virtual ObjectPtr find(const Identity&) const;
virtual ObjectPtr findFacet(const Identity&, const std::string&) const;
virtual FacetMap findAllFacets(const Identity&) const;
- virtual ObjectPtr findByProxy(const ObjectPrx&) const;
+ virtual ObjectPtr findByProxy(const ObjectPrxPtr&) const;
virtual ObjectPtr findDefaultServant(const std::string&) const;
@@ -74,18 +76,18 @@ public:
virtual ServantLocatorPtr removeServantLocator(const std::string&);
virtual ServantLocatorPtr findServantLocator(const std::string&) const;
- virtual ObjectPrx createProxy(const Identity&) const;
- virtual ObjectPrx createDirectProxy(const Identity&) const;
- virtual ObjectPrx createIndirectProxy(const Identity&) const;
+ virtual ObjectPrxPtr createProxy(const Identity&) const;
+ virtual ObjectPrxPtr createDirectProxy(const Identity&) const;
+ virtual ObjectPrxPtr createIndirectProxy(const Identity&) const;
- virtual void setLocator(const LocatorPrx&);
- virtual Ice::LocatorPrx getLocator() const;
+ virtual void setLocator(const LocatorPrxPtr&);
+ virtual Ice::LocatorPrxPtr getLocator() const;
virtual void refreshPublishedEndpoints();
virtual EndpointSeq getEndpoints() const;
virtual EndpointSeq getPublishedEndpoints() const;
- bool isLocal(const ObjectPrx&) const;
+ bool isLocal(const ObjectPrxPtr&) const;
void flushAsyncBatchRequests(const IceInternal::CommunicatorFlushBatchAsyncPtr&);
@@ -100,21 +102,22 @@ public:
IceInternal::ACMConfig getACM() const;
size_t messageSizeMax() const { return _messageSizeMax; }
-private:
-
ObjectAdapterI(const IceInternal::InstancePtr&, const CommunicatorPtr&,
const IceInternal::ObjectAdapterFactoryPtr&, const std::string&, bool);
virtual ~ObjectAdapterI();
- void initialize(const RouterPrx&);
+
+private:
+
+ void initialize(const RouterPrxPtr&);
friend class IceInternal::ObjectAdapterFactory;
- ObjectPrx newProxy(const Identity&, const std::string&) const;
- ObjectPrx newDirectProxy(const Identity&, const std::string&) const;
- ObjectPrx newIndirectProxy(const Identity&, const std::string&, const std::string&) const;
+ ObjectPrxPtr newProxy(const Identity&, const std::string&) const;
+ ObjectPrxPtr newDirectProxy(const Identity&, const std::string&) const;
+ ObjectPrxPtr newIndirectProxy(const Identity&, const std::string&, const std::string&) const;
void checkForDeactivation() const;
std::vector<IceInternal::EndpointIPtr> parseEndpoints(const std::string&, bool) const;
std::vector<IceInternal::EndpointIPtr> parsePublishedEndpoints();
- void updateLocatorRegistry(const IceInternal::LocatorInfoPtr&, const Ice::ObjectPrx&);
+ void updateLocatorRegistry(const IceInternal::LocatorInfoPtr&, const Ice::ObjectPrxPtr&);
bool filterProperties(Ice::StringSeq&);
enum State
diff --git a/cpp/src/Ice/ObjectFactoryManager.cpp b/cpp/src/Ice/ObjectFactoryManager.cpp
index 835df0b588e..d09ad32afe1 100644
--- a/cpp/src/Ice/ObjectFactoryManager.cpp
+++ b/cpp/src/Ice/ObjectFactoryManager.cpp
@@ -19,7 +19,7 @@ using namespace IceInternal;
IceUtil::Shared* IceInternal::upCast(ObjectFactoryManager* p) { return p; }
void
-IceInternal::ObjectFactoryManager::add(const ObjectFactoryPtr& factory, const string& id)
+IceInternal::ObjectFactoryManager::add(const ICE_OBJECT_FACTORY& factory, const string& id)
{
IceUtil::Mutex::Lock sync(*this);
@@ -32,13 +32,13 @@ IceInternal::ObjectFactoryManager::add(const ObjectFactoryPtr& factory, const st
throw ex;
}
- _factoryMapHint = _factoryMap.insert(_factoryMapHint, pair<const string, ObjectFactoryPtr>(id, factory));
+ _factoryMapHint = _factoryMap.insert(_factoryMapHint, pair<const string, ICE_OBJECT_FACTORY>(id, factory));
}
void
IceInternal::ObjectFactoryManager::remove(const string& id)
{
- ObjectFactoryPtr factory = 0;
+ ICE_OBJECT_FACTORY factory = ICE_NULLPTR;
{
IceUtil::Mutex::Lock sync(*this);
@@ -81,10 +81,12 @@ IceInternal::ObjectFactoryManager::remove(const string& id)
// Destroy outside the lock
//
assert(factory != 0);
+#ifndef ICE_CPP11_MAPPING
factory->destroy();
+#endif
}
-ObjectFactoryPtr
+ICE_OBJECT_FACTORY
IceInternal::ObjectFactoryManager::find(const string& id) const
{
IceUtil::Mutex::Lock sync(*this);
@@ -112,7 +114,7 @@ IceInternal::ObjectFactoryManager::find(const string& id) const
}
else
{
- return 0;
+ return ICE_NULLPTR;
}
}
@@ -124,6 +126,11 @@ IceInternal::ObjectFactoryManager::ObjectFactoryManager() :
void
IceInternal::ObjectFactoryManager::destroy()
{
+#ifdef ICE_CPP11_MAPPING
+ IceUtil::Mutex::Lock sync(*this);
+ _factoryMap.clear();
+ _factoryMapHint = _factoryMap.end();
+#else
FactoryMap oldMap;
{
IceUtil::Mutex::Lock sync(*this);
@@ -136,4 +143,5 @@ IceInternal::ObjectFactoryManager::destroy()
//
for_each(oldMap.begin(), oldMap.end(),
Ice::secondVoidMemFun<const string, ObjectFactory>(&ObjectFactory::destroy));
+#endif
}
diff --git a/cpp/src/Ice/ObjectFactoryManager.h b/cpp/src/Ice/ObjectFactoryManager.h
index 97efc5305ee..c102d276c2c 100644
--- a/cpp/src/Ice/ObjectFactoryManager.h
+++ b/cpp/src/Ice/ObjectFactoryManager.h
@@ -13,7 +13,7 @@
#include <IceUtil/Shared.h>
#include <IceUtil/Mutex.h>
#include <Ice/ObjectFactoryManagerF.h>
-#include <Ice/ObjectFactoryF.h>
+#include <Ice/ObjectFactory.h>
namespace IceInternal
{
@@ -22,11 +22,11 @@ class ObjectFactoryManager : public ::IceUtil::Shared, public ::IceUtil::Mutex
{
public:
- void add(const ::Ice::ObjectFactoryPtr&, const std::string&);
+ void add(const ICE_OBJECT_FACTORY&, const std::string&);
+ ICE_OBJECT_FACTORY find(const std::string&) const;
+ typedef std::map<std::string, ICE_OBJECT_FACTORY> FactoryMap;
+
void remove(const std::string&);
- ::Ice::ObjectFactoryPtr find(const std::string&) const;
-
- typedef std::map<std::string, ::Ice::ObjectFactoryPtr> FactoryMap;
private:
diff --git a/cpp/src/Ice/ObserverHelper.cpp b/cpp/src/Ice/ObserverHelper.cpp
index d5604b3d973..9fe1ed7f520 100644
--- a/cpp/src/Ice/ObserverHelper.cpp
+++ b/cpp/src/Ice/ObserverHelper.cpp
@@ -23,7 +23,7 @@ Ice::Context emptyCtx;
}
-IceInternal::InvocationObserver::InvocationObserver(IceProxy::Ice::Object* proxy, const string& op, const Context* ctx)
+IceInternal::InvocationObserver::InvocationObserver(const Ice::ObjectPrxPtr& proxy, const string& op, const Context* ctx)
{
const CommunicatorObserverPtr& obsv = proxy->__reference()->getInstance()->initializationData().observer;
if(!obsv)
@@ -53,7 +53,7 @@ IceInternal::InvocationObserver::InvocationObserver(IceInternal::Instance* insta
}
void
-IceInternal::InvocationObserver::attach(IceProxy::Ice::Object* proxy, const string& op, const Context* ctx)
+IceInternal::InvocationObserver::attach(const Ice::ObjectPrxPtr& proxy, const string& op, const Context* ctx)
{
const CommunicatorObserverPtr& obsv = proxy->__reference()->getInstance()->initializationData().observer;
if(!obsv)
diff --git a/cpp/src/Ice/OpaqueEndpointI.cpp b/cpp/src/Ice/OpaqueEndpointI.cpp
index c061eb0acfa..6a15b5e920c 100644
--- a/cpp/src/Ice/OpaqueEndpointI.cpp
+++ b/cpp/src/Ice/OpaqueEndpointI.cpp
@@ -107,7 +107,7 @@ IceInternal::OpaqueEndpointI::streamWrite(BasicStream* s) const
Ice::EndpointInfoPtr
IceInternal::OpaqueEndpointI::getInfo() const
{
- return new OpaqueEndpointInfoI(_type, _rawEncoding, _rawBytes);
+ return ICE_MAKE_SHARED(OpaqueEndpointInfoI, _type, _rawEncoding, _rawBytes);
}
Short
@@ -131,7 +131,11 @@ IceInternal::OpaqueEndpointI::timeout() const
EndpointIPtr
IceInternal::OpaqueEndpointI::timeout(Int) const
{
+#ifdef ICE_CPP11_MAPPING
+ return dynamic_pointer_cast<OpaqueEndpointI>(const_pointer_cast<EndpointI>(shared_from_this()));
+#else
return const_cast<OpaqueEndpointI*>(this);
+#endif
}
const string&
@@ -143,7 +147,11 @@ IceInternal::OpaqueEndpointI::connectionId() const
EndpointIPtr
IceInternal::OpaqueEndpointI::connectionId(const string&) const
{
+#ifdef ICE_CPP11_MAPPING
+ return dynamic_pointer_cast<OpaqueEndpointI>(const_pointer_cast<EndpointI>(shared_from_this()));
+#else
return const_cast<OpaqueEndpointI*>(this);
+#endif
}
bool
@@ -155,7 +163,11 @@ IceInternal::OpaqueEndpointI::compress() const
EndpointIPtr
IceInternal::OpaqueEndpointI::compress(bool) const
{
+#ifdef ICE_CPP11_MAPPING
+ return dynamic_pointer_cast<OpaqueEndpointI>(const_pointer_cast<EndpointI>(shared_from_this()));
+#else
return const_cast<OpaqueEndpointI*>(this);
+#endif
}
bool
@@ -173,7 +185,7 @@ IceInternal::OpaqueEndpointI::secure() const
TransceiverPtr
IceInternal::OpaqueEndpointI::transceiver() const
{
- return 0;
+ return ICE_NULLPTR;
}
void
@@ -185,14 +197,18 @@ IceInternal::OpaqueEndpointI::connectors_async(Ice::EndpointSelectionType, const
AcceptorPtr
IceInternal::OpaqueEndpointI::acceptor(const string&) const
{
- return 0;
+ return ICE_NULLPTR;
}
vector<EndpointIPtr>
IceInternal::OpaqueEndpointI::expand() const
{
vector<EndpointIPtr> endps;
+#ifdef ICE_CPP11_MAPPING
+ endps.push_back(dynamic_pointer_cast<OpaqueEndpointI>(const_pointer_cast<EndpointI>(shared_from_this())));
+#else
endps.push_back(const_cast<OpaqueEndpointI*>(this));
+#endif
return endps;
}
@@ -231,7 +247,11 @@ IceInternal::OpaqueEndpointI::options() const
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::OpaqueEndpointI::operator==(const EndpointI& r) const
+#else
IceInternal::OpaqueEndpointI::operator==(const LocalObject& r) const
+#endif
{
const OpaqueEndpointI* p = dynamic_cast<const OpaqueEndpointI*>(&r);
if(!p)
@@ -263,7 +283,11 @@ IceInternal::OpaqueEndpointI::operator==(const LocalObject& r) const
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::OpaqueEndpointI::operator<(const EndpointI& r) const
+#else
IceInternal::OpaqueEndpointI::operator<(const LocalObject& r) const
+#endif
{
const OpaqueEndpointI* p = dynamic_cast<const OpaqueEndpointI*>(&r);
if(!p)
diff --git a/cpp/src/Ice/OpaqueEndpointI.h b/cpp/src/Ice/OpaqueEndpointI.h
index 9c943c59e59..4ea862d4c30 100644
--- a/cpp/src/Ice/OpaqueEndpointI.h
+++ b/cpp/src/Ice/OpaqueEndpointI.h
@@ -45,9 +45,13 @@ public:
virtual Ice::Int hash() const;
virtual std::string options() const;
+#ifdef ICE_CPP11_MAPPING
+ virtual bool operator==(const EndpointI&) const;
+ virtual bool operator<(const EndpointI&) const;
+#else
virtual bool operator==(const Ice::LocalObject&) const;
virtual bool operator<(const Ice::LocalObject&) const;
-
+#endif
using EndpointI::connectionId;
diff --git a/cpp/src/Ice/Outgoing.cpp b/cpp/src/Ice/Outgoing.cpp
index 14eb27f7693..2cc2c091ae1 100644
--- a/cpp/src/Ice/Outgoing.cpp
+++ b/cpp/src/Ice/Outgoing.cpp
@@ -26,7 +26,7 @@ OutgoingBase::OutgoingBase(Instance* instance) : _os(instance, Ice::currentProto
{
}
-ProxyOutgoingBase::ProxyOutgoingBase(IceProxy::Ice::Object* proxy, OperationMode mode) :
+ProxyOutgoingBase::ProxyOutgoingBase(const Ice::ObjectPrxPtr& proxy, OperationMode mode) :
OutgoingBase(proxy->__reference()->getInstance().get()),
_proxy(proxy),
_mode(mode),
@@ -280,7 +280,7 @@ ProxyOutgoingBase::invokeImpl()
return false;
}
-Outgoing::Outgoing(IceProxy::Ice::Object* proxy, const string& operation, OperationMode mode, const Context* context) :
+Outgoing::Outgoing(const Ice::ObjectPrxPtr& proxy, const string& operation, OperationMode mode, const Context* context) :
ProxyOutgoingBase(proxy, mode),
_encoding(getCompatibleEncoding(proxy->__reference()->getEncoding())),
_is(proxy->__reference()->getInstance().get(), Ice::currentProtocolEncoding),
@@ -288,7 +288,6 @@ Outgoing::Outgoing(IceProxy::Ice::Object* proxy, const string& operation, Operat
{
checkSupportedProtocol(getCompatibleProtocol(proxy->__reference()->getProtocol()));
_observer.attach(proxy, operation, context);
-
switch(_proxy->__reference()->getMode())
{
case Reference::ModeTwoway:
@@ -328,7 +327,7 @@ Outgoing::Outgoing(IceProxy::Ice::Object* proxy, const string& operation, Operat
_os.write(static_cast<Ice::Byte>(mode));
- if(context != 0)
+ if(context != &Ice::noExplicitContext)
{
//
// Explicit context
@@ -582,8 +581,8 @@ Outgoing::throwUserException()
}
}
-ProxyFlushBatch::ProxyFlushBatch(IceProxy::Ice::Object* proxy, const string& operation) :
- ProxyOutgoingBase(proxy, Ice::Normal)
+ProxyFlushBatch::ProxyFlushBatch(const Ice::ObjectPrxPtr& proxy, const string& operation) :
+ ProxyOutgoingBase(proxy, ICE_ENUM(OperationMode, Normal))
{
checkSupportedProtocol(getCompatibleProtocol(proxy->__reference()->getProtocol()));
_observer.attach(proxy, operation, 0);
diff --git a/cpp/src/Ice/OutgoingAsync.cpp b/cpp/src/Ice/OutgoingAsync.cpp
index ee1e6d5a437..cfe5adda62e 100644
--- a/cpp/src/Ice/OutgoingAsync.cpp
+++ b/cpp/src/Ice/OutgoingAsync.cpp
@@ -22,10 +22,12 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(OutgoingAsyncBase* p) { return p; }
IceUtil::Shared* IceInternal::upCast(ProxyOutgoingAsyncBase* p) { return p; }
IceUtil::Shared* IceInternal::upCast(OutgoingAsync* p) { return p; }
IceUtil::Shared* IceInternal::upCast(CommunicatorFlushBatchAsync* p) { return p; }
+#endif
bool
OutgoingAsyncBase::sent()
@@ -52,12 +54,20 @@ OutgoingAsyncBase::getIs()
return 0; // Must be overriden by request that can handle responses
}
+#ifdef ICE_CPP11_MAPPING
+OutgoingAsyncBase::OutgoingAsyncBase(const CommunicatorPtr& communicator,
+ const InstancePtr& instance,
+ const string& operation,
+ const CallbackBasePtr& delegate) :
+ AsyncResult(communicator, instance, operation, delegate),
+#else
OutgoingAsyncBase::OutgoingAsyncBase(const CommunicatorPtr& communicator,
const InstancePtr& instance,
const string& operation,
const CallbackBasePtr& delegate,
const LocalObjectPtr& cookie) :
AsyncResult(communicator, instance, operation, delegate, cookie),
+#endif
_os(instance.get(), Ice::currentProtocolEncoding)
{
}
@@ -83,7 +93,7 @@ OutgoingAsyncBase::finished(const Exception& ex)
return AsyncResult::finished(ex);
}
-Ice::ObjectPrx
+Ice::ObjectPrxPtr
ProxyOutgoingAsyncBase::getProxy() const
{
return _proxy;
@@ -101,7 +111,11 @@ ProxyOutgoingAsyncBase::completed(const Exception& exc)
_cachedConnection = 0;
if(_proxy->__reference()->getInvocationTimeout() == -2)
{
+#ifdef ICE_CPP11_MAPPING
+ _instance->timer()->cancel(dynamic_pointer_cast<TimerTask>(shared_from_this()));
+#else
_instance->timer()->cancel(this);
+#endif
}
//
@@ -115,7 +129,12 @@ ProxyOutgoingAsyncBase::completed(const Exception& exc)
// the retry interval is 0. This method can be called with the
// connection locked so we can't just retry here.
//
+#ifdef ICE_CPP11_MAPPING
+ _instance->retryQueue()->add(dynamic_pointer_cast<ProxyOutgoingAsyncBase>(shared_from_this()),
+ handleException(exc));
+#else
_instance->retryQueue()->add(this, handleException(exc));
+#endif
return false;
}
catch(const Exception& ex)
@@ -136,7 +155,11 @@ ProxyOutgoingAsyncBase::retryException(const Exception& ex)
// connection to be done.
//
_proxy->__updateRequestHandler(_handler, 0); // Clear request handler and always retry.
+#ifdef ICE_CPP11_MAPPING
+ _instance->retryQueue()->add(dynamic_pointer_cast<ProxyOutgoingAsyncBase>(shared_from_this()), 0);
+#else
_instance->retryQueue()->add(this, 0);
+#endif
}
catch(const Ice::Exception& exc)
{
@@ -155,7 +178,12 @@ ProxyOutgoingAsyncBase::cancelable(const CancellationHandlerPtr& handler)
const int timeout = _cachedConnection->timeout();
if(timeout > 0)
{
+#ifdef ICE_CPP11_MAPPING
+ _instance->timer()->schedule(dynamic_pointer_cast<TimerTask>(shared_from_this()),
+ IceUtil::Time::milliSeconds(timeout));
+#else
_instance->timer()->schedule(this, IceUtil::Time::milliSeconds(timeout));
+#endif
}
}
AsyncResult::cancelable(handler);
@@ -187,13 +215,20 @@ ProxyOutgoingAsyncBase::abort(const Ice::Exception& ex)
}
}
-ProxyOutgoingAsyncBase::ProxyOutgoingAsyncBase(const ObjectPrx& prx,
+#ifdef ICE_CPP11_MAPPING
+ProxyOutgoingAsyncBase::ProxyOutgoingAsyncBase(const ObjectPrxPtr& prx,
+ const string& operation,
+ const CallbackBasePtr& delegate) :
+ OutgoingAsyncBase(prx->ice_getCommunicator(), prx->__reference()->getInstance(), operation, delegate),
+#else
+ProxyOutgoingAsyncBase::ProxyOutgoingAsyncBase(const ObjectPrxPtr& prx,
const string& operation,
const CallbackBasePtr& delegate,
const LocalObjectPtr& cookie) :
OutgoingAsyncBase(prx->ice_getCommunicator(), prx->__reference()->getInstance(), operation, delegate, cookie),
+#endif
_proxy(prx),
- _mode(Normal),
+ _mode(ICE_ENUM(OperationMode, Normal)),
_cnt(0),
_sent(false)
{
@@ -209,7 +244,12 @@ ProxyOutgoingAsyncBase::invokeImpl(bool userThread)
int invocationTimeout = _proxy->__reference()->getInvocationTimeout();
if(invocationTimeout > 0)
{
+#ifdef ICE_CPP11_MAPPING
+ _instance->timer()->schedule(dynamic_pointer_cast<TimerTask>(shared_from_this()),
+ IceUtil::Time::milliSeconds(invocationTimeout));
+#else
_instance->timer()->schedule(this, IceUtil::Time::milliSeconds(invocationTimeout));
+#endif
}
}
else
@@ -223,7 +263,12 @@ ProxyOutgoingAsyncBase::invokeImpl(bool userThread)
{
_sent = false;
_handler = _proxy->__getRequestHandler();
+#ifdef ICE_CPP11_MAPPING
+ AsyncStatus status = _handler->sendAsyncRequest(
+ dynamic_pointer_cast<ProxyOutgoingAsyncBase>(shared_from_this()));
+#else
AsyncStatus status = _handler->sendAsyncRequest(this);
+#endif
if(status & AsyncStatusSent)
{
if(userThread)
@@ -258,7 +303,12 @@ ProxyOutgoingAsyncBase::invokeImpl(bool userThread)
int interval = handleException(ex);
if(interval > 0)
{
+#ifdef ICE_CPP11_MAPPING
+ _instance->retryQueue()->add(dynamic_pointer_cast<ProxyOutgoingAsyncBase>(shared_from_this()),
+ interval);
+#else
_instance->retryQueue()->add(this, interval);
+#endif
return;
}
else
@@ -293,7 +343,11 @@ ProxyOutgoingAsyncBase::sent(bool done)
{
if(_proxy->__reference()->getInvocationTimeout() != -1)
{
- _instance->timer()->cancel(this);
+#ifdef ICE_CPP11_MAPPING
+ _instance->timer()->cancel(dynamic_pointer_cast<TimerTask>(shared_from_this()));
+#else
+ _instance->timer()->cancel(this);
+#endif
}
}
return OutgoingAsyncBase::sent(done);
@@ -304,7 +358,11 @@ ProxyOutgoingAsyncBase::finished(const Exception& ex)
{
if(_proxy->__reference()->getInvocationTimeout() != -1)
{
- _instance->timer()->cancel(this);
+#ifdef ICE_CPP11_MAPPING
+ _instance->timer()->cancel(dynamic_pointer_cast<TimerTask>(shared_from_this()));
+#else
+ _instance->timer()->cancel(this);
+#endif
}
return OutgoingAsyncBase::finished(ex);
}
@@ -314,7 +372,11 @@ ProxyOutgoingAsyncBase::finished(bool ok)
{
if(_proxy->__reference()->getInvocationTimeout() != -1)
{
- _instance->timer()->cancel(this);
+#ifdef ICE_CPP11_MAPPING
+ _instance->timer()->cancel(dynamic_pointer_cast<TimerTask>(shared_from_this()));
+#else
+ _instance->timer()->cancel(this);
+#endif
}
return AsyncResult::finished(ok);
}
@@ -338,11 +400,18 @@ ProxyOutgoingAsyncBase::runTimerTask()
}
}
-OutgoingAsync::OutgoingAsync(const ObjectPrx& prx,
+#ifdef ICE_CPP11_MAPPING
+OutgoingAsync::OutgoingAsync(const ObjectPrxPtr& prx,
+ const string& operation,
+ const CallbackBasePtr& delegate) :
+ ProxyOutgoingAsyncBase(prx, operation, delegate),
+#else
+OutgoingAsync::OutgoingAsync(const ObjectPrxPtr& prx,
const string& operation,
const CallbackBasePtr& delegate,
const LocalObjectPtr& cookie) :
ProxyOutgoingAsyncBase(prx, operation, delegate, cookie),
+#endif
_encoding(getCompatibleEncoding(prx->__reference()->getEncoding()))
{
}
@@ -353,7 +422,7 @@ OutgoingAsync::prepare(const string& operation, OperationMode mode, const Contex
checkSupportedProtocol(getCompatibleProtocol(_proxy->__reference()->getProtocol()));
_mode = mode;
- _observer.attach(_proxy.get(), operation, context);
+ _observer.attach(_proxy, operation, context);
switch(_proxy->__reference()->getMode())
{
@@ -394,7 +463,7 @@ OutgoingAsync::prepare(const string& operation, OperationMode mode, const Contex
_os.write(static_cast<Byte>(_mode));
- if(context != 0)
+ if(context != &Ice::noExplicitContext)
{
//
// Explicit context
@@ -429,7 +498,11 @@ AsyncStatus
OutgoingAsync::invokeRemote(const ConnectionIPtr& connection, bool compress, bool response)
{
_cachedConnection = connection;
+#ifdef ICE_CPP11_MAPPING
+ return connection->sendAsyncRequest(dynamic_pointer_cast<OutgoingAsyncBase>(shared_from_this()), compress, response, 0);
+#else
return connection->sendAsyncRequest(this, compress, response, 0);
+#endif
}
AsyncStatus
@@ -620,13 +693,20 @@ OutgoingAsync::completed()
}
}
-ProxyFlushBatchAsync::ProxyFlushBatchAsync(const ObjectPrx& proxy,
+#ifdef ICE_CPP11_MAPPING
+ProxyFlushBatchAsync::ProxyFlushBatchAsync(const ObjectPrxPtr& proxy,
+ const string& operation,
+ const CallbackBasePtr& delegate) :
+ ProxyOutgoingAsyncBase(proxy, operation, delegate)
+#else
+ProxyFlushBatchAsync::ProxyFlushBatchAsync(const ObjectPrxPtr& proxy,
const string& operation,
const CallbackBasePtr& delegate,
const LocalObjectPtr& cookie) :
ProxyOutgoingAsyncBase(proxy, operation, delegate, cookie)
+#endif
{
- _observer.attach(proxy.get(), operation, 0);
+ _observer.attach(proxy, operation, 0);
_batchRequestNum = proxy->__getBatchRequestQueue()->swap(&_os);
}
@@ -645,7 +725,12 @@ ProxyFlushBatchAsync::invokeRemote(const ConnectionIPtr& connection, bool compre
}
}
_cachedConnection = connection;
+#ifdef ICE_CPP11_MAPPING
+ return connection->sendAsyncRequest(dynamic_pointer_cast<OutgoingAsyncBase>(shared_from_this()),
+ compress, false, _batchRequestNum);
+#else
return connection->sendAsyncRequest(this, compress, false, _batchRequestNum);
+#endif
}
AsyncStatus
@@ -672,13 +757,20 @@ ProxyFlushBatchAsync::invoke()
invokeImpl(true); // userThread = true
}
-ProxyGetConnection::ProxyGetConnection(const ObjectPrx& prx,
+#ifdef ICE_CPP11_MAPPING
+ProxyGetConnection::ProxyGetConnection(const ObjectPrxPtr& prx,
+ const string& operation,
+ const CallbackBasePtr& delegate) :
+ ProxyOutgoingAsyncBase(prx, operation, delegate)
+#else
+ProxyGetConnection::ProxyGetConnection(const ObjectPrxPtr& prx,
const string& operation,
const CallbackBasePtr& delegate,
const LocalObjectPtr& cookie) :
ProxyOutgoingAsyncBase(prx, operation, delegate, cookie)
+#endif
{
- _observer.attach(prx.get(), operation, 0);
+ _observer.attach(prx, operation, 0);
}
AsyncStatus
@@ -708,13 +800,23 @@ ProxyGetConnection::invoke()
invokeImpl(true); // userThread = true
}
+#ifdef ICE_CPP11_MAPPING
+ConnectionFlushBatchAsync::ConnectionFlushBatchAsync(const ConnectionIPtr& connection,
+ const CommunicatorPtr& communicator,
+ const InstancePtr& instance,
+ const string& operation,
+ const CallbackBasePtr& delegate) :
+ OutgoingAsyncBase(communicator, instance, operation, delegate),
+#else
ConnectionFlushBatchAsync::ConnectionFlushBatchAsync(const ConnectionIPtr& connection,
const CommunicatorPtr& communicator,
const InstancePtr& instance,
const string& operation,
const CallbackBasePtr& delegate,
const LocalObjectPtr& cookie) :
- OutgoingAsyncBase(communicator, instance, operation, delegate, cookie), _connection(connection)
+ OutgoingAsyncBase(communicator, instance, operation, delegate, cookie),
+#endif
+ _connection(connection)
{
_observer.attach(instance.get(), operation);
}
@@ -742,7 +844,12 @@ ConnectionFlushBatchAsync::invoke()
}
else
{
+#ifdef ICE_CPP11_MAPPING
+ status = _connection->sendAsyncRequest(
+ dynamic_pointer_cast<OutgoingAsyncBase>(shared_from_this()), false, false, batchRequestNum);
+#else
status = _connection->sendAsyncRequest(this, false, false, batchRequestNum);
+#endif
}
if(status & AsyncStatusSent)
@@ -770,12 +877,20 @@ ConnectionFlushBatchAsync::invoke()
}
}
+#ifdef ICE_CPP11_MAPPING
+CommunicatorFlushBatchAsync::CommunicatorFlushBatchAsync(const CommunicatorPtr& communicator,
+ const InstancePtr& instance,
+ const string& operation,
+ const CallbackBasePtr& cb) :
+ AsyncResult(communicator, instance, operation, cb)
+#else
CommunicatorFlushBatchAsync::CommunicatorFlushBatchAsync(const CommunicatorPtr& communicator,
const InstancePtr& instance,
const string& operation,
const CallbackBasePtr& cb,
const LocalObjectPtr& cookie) :
AsyncResult(communicator, instance, operation, cb, cookie)
+#endif
{
_observer.attach(instance.get(), operation);
@@ -797,7 +912,11 @@ CommunicatorFlushBatchAsync::flushConnection(const ConnectionIPtr& con)
FlushBatch(const CommunicatorFlushBatchAsyncPtr& outAsync,
const InstancePtr& instance,
InvocationObserver& observer) :
+#ifdef ICE_CPP11_MAPPING
+ OutgoingAsyncBase(outAsync->getCommunicator(), instance, outAsync->getOperation(), __dummyCallback),
+#else
OutgoingAsyncBase(outAsync->getCommunicator(), instance, outAsync->getOperation(), __dummyCallback, 0),
+#endif
_outAsync(outAsync),
_observer(observer)
{
@@ -836,7 +955,12 @@ CommunicatorFlushBatchAsync::flushConnection(const ConnectionIPtr& con)
try
{
+#ifdef ICE_CPP11_MAPPING
+ auto flushBatch = make_shared<FlushBatch>(
+ dynamic_pointer_cast<CommunicatorFlushBatchAsync>(shared_from_this()), _instance, _observer);
+#else
OutgoingAsyncBasePtr flushBatch = new FlushBatch(this, _instance, _observer);
+#endif
int batchRequestNum = con->getBatchRequestQueue()->swap(flushBatch->getOs());
if(batchRequestNum == 0)
{
@@ -885,3 +1009,248 @@ CommunicatorFlushBatchAsync::check(bool userThread)
}
}
}
+
+#ifdef ICE_CPP11_MAPPING
+OnewayClosureCallback::OnewayClosureCallback(
+ const string& name,
+ const shared_ptr<Ice::ObjectPrx>& proxy,
+ function<void ()> response,
+ function<void (exception_ptr)> exception,
+ function<void (bool)> sent) :
+ __name(name),
+ __proxy(proxy),
+ __response(response),
+ __exception(exception),
+ __sent(sent)
+{
+}
+
+void
+OnewayClosureCallback::sent(const AsyncResultPtr& __result) const
+{
+ if(__sent)
+ {
+ __sent(__result->sentSynchronously());
+ }
+}
+
+bool
+OnewayClosureCallback::hasSentCallback() const
+{
+ return __sent != nullptr;
+}
+
+void
+OnewayClosureCallback::completed(const AsyncResultPtr& __result) const
+{
+ try
+ {
+ AsyncResult::__check(__result, __proxy.get(), __name);
+ bool ok = __result->__wait();
+ if(__proxy->__reference()->getMode() == Reference::ModeTwoway)
+ {
+ if(!ok)
+ {
+ try
+ {
+ __result->__throwUserException();
+ }
+ catch(const UserException& __ex)
+ {
+ throw UnknownUserException(__FILE__, __LINE__, __ex.ice_name());
+ }
+ }
+ __result->__readEmptyParams();
+ if(__response)
+ {
+ try
+ {
+ __response();
+ }
+ catch(...)
+ {
+ throw current_exception();
+ }
+ }
+ }
+ }
+ catch(const exception_ptr& ex)
+ {
+ rethrow_exception(ex);
+ }
+ catch(const Ice::Exception&)
+ {
+ if(__exception)
+ {
+ __exception(current_exception());
+ }
+ }
+}
+
+function<void ()>
+OnewayClosureCallback::invoke(
+ const string& __name,
+ const shared_ptr<Ice::ObjectPrx>& __proxy,
+ Ice::OperationMode __mode,
+ Ice::FormatType __format,
+ function<void (BasicStream*)> __marshal,
+ function<void ()> __response,
+ function<void (exception_ptr)> __exception,
+ function<void (bool)> __sent,
+ const Ice::Context& __context)
+{
+ auto __result = make_shared<OutgoingAsync>(__proxy, __name,
+ make_shared<OnewayClosureCallback>(__name, __proxy, move(__response), move(__exception), move(__sent)));
+ try
+ {
+ __result->prepare(__name, __mode, &__context);
+ if(__marshal)
+ {
+ __marshal(__result->startWriteParams(__format));
+ __result->endWriteParams();
+ }
+ else
+ {
+ __result->writeEmptyParams();
+ }
+ __result->invoke();
+ }
+ catch(const exception_ptr& ex)
+ {
+ rethrow_exception(ex);
+ }
+ catch(const Exception& __ex)
+ {
+ __result->abort(__ex);
+ }
+
+ return [__result]()
+ {
+ __result->cancel();
+ };
+}
+
+TwowayClosureCallback::TwowayClosureCallback(
+ const string& name,
+ const shared_ptr<Ice::ObjectPrx>& proxy,
+ bool readEmptyParams,
+ function<void (BasicStream*)> read,
+ function<void (const UserException&)> userException,
+ function<void (exception_ptr)> exception,
+ function<void (bool)> sent) :
+ __name(name),
+ __proxy(proxy),
+ __readEmptyParams(readEmptyParams),
+ __read(move(read)),
+ __userException(move(userException)),
+ __exception(move(exception)),
+ __sent(move(sent))
+{
+}
+
+void
+TwowayClosureCallback::sent(const AsyncResultPtr& result) const
+{
+ if(__sent != nullptr)
+ {
+ __sent(result->sentSynchronously());
+ }
+}
+
+bool
+TwowayClosureCallback::hasSentCallback() const
+{
+ return __sent != nullptr;
+}
+
+void
+TwowayClosureCallback::completed(const AsyncResultPtr& __result) const
+{
+ try
+ {
+ AsyncResult::__check(__result, __proxy.get(), __name);
+ if(!__result->__wait())
+ {
+ try
+ {
+ __result->__throwUserException();
+ }
+ catch(const Ice::UserException& __ex)
+ {
+ if(__userException)
+ {
+ __userException(__ex);
+ }
+ throw ::Ice::UnknownUserException(__FILE__, __LINE__, __ex.ice_name());
+ }
+ }
+ else
+ {
+ if(__readEmptyParams)
+ {
+ __result->__readEmptyParams();
+ __read(0);
+ }
+ else
+ {
+ __read(__result->__startReadParams());
+ }
+ }
+ }
+ catch(const exception_ptr& ex)
+ {
+ rethrow_exception(ex);
+ }
+ catch(const Ice::Exception&)
+ {
+ if(__exception)
+ {
+ __exception(current_exception());
+ }
+ }
+}
+
+function<void ()>
+TwowayClosureCallback::invoke(
+ const string& __name,
+ const shared_ptr<Ice::ObjectPrx>& __proxy,
+ OperationMode __mode,
+ FormatType __format,
+ function<void (BasicStream*)> __write,
+ bool __readEmptyParams,
+ function<void (BasicStream*)> __read,
+ function<void (const UserException&)> __userException,
+ function<void (exception_ptr)> __exception,
+ function<void (bool)> __sent,
+ const Context& __context)
+{
+ assert(__proxy);
+ auto __result = make_shared<OutgoingAsync>(__proxy, __name,
+ make_shared<TwowayClosureCallback>(__name, __proxy, __readEmptyParams, move(__read),
+ move(__userException), move(__exception), move(__sent)));
+ __proxy->__checkAsyncTwowayOnly(__name);
+ try
+ {
+ __result->prepare(__name, __mode, &__context);
+ if(__write)
+ {
+ __write(__result->startWriteParams(__format));
+ __result->endWriteParams();
+ }
+ else
+ {
+ __result->writeEmptyParams();
+ }
+ __result->invoke();
+ }
+ catch(const Exception& __ex)
+ {
+ __result->abort(__ex);
+ }
+
+ return [__result]()
+ {
+ __result->cancel();
+ };
+}
+#endif
diff --git a/cpp/src/Ice/PluginManagerI.cpp b/cpp/src/Ice/PluginManagerI.cpp
index e3186298a9c..f0bf409c3f4 100644
--- a/cpp/src/Ice/PluginManagerI.cpp
+++ b/cpp/src/Ice/PluginManagerI.cpp
@@ -440,7 +440,6 @@ Ice::PluginManagerI::loadPlugin(const string& name, const string& pluginSpec, St
cmdArgs = properties->parseCommandLineOptions(name, cmdArgs);
}
- PluginPtr plugin;
PLUGIN_FACTORY factory = 0;
DynamicLibraryPtr library;
@@ -487,7 +486,7 @@ Ice::PluginManagerI::loadPlugin(const string& name, const string& pluginSpec, St
// Invoke the factory function. No exceptions can be raised
// by the factory function because it's declared extern "C".
//
- plugin = factory(_communicator, name, args);
+ PluginPtr plugin(factory(_communicator, name, args));
if(!plugin)
{
PluginInitializationException e(__FILE__, __LINE__);
diff --git a/cpp/src/Ice/PluginManagerI.h b/cpp/src/Ice/PluginManagerI.h
index ef9a1dd9275..97aa03990a6 100644
--- a/cpp/src/Ice/PluginManagerI.h
+++ b/cpp/src/Ice/PluginManagerI.h
@@ -34,10 +34,10 @@ public:
virtual PluginPtr getPlugin(const std::string&);
virtual void addPlugin(const std::string&, const PluginPtr&);
virtual void destroy();
+ PluginManagerI(const CommunicatorPtr&, const IceInternal::DynamicLibraryListPtr&);
private:
- PluginManagerI(const CommunicatorPtr&, const IceInternal::DynamicLibraryListPtr&);
friend class IceInternal::Instance;
void loadPlugins(int&, char*[]);
diff --git a/cpp/src/Ice/PropertiesAdminI.cpp b/cpp/src/Ice/PropertiesAdminI.cpp
index 58095fbf0dc..4cd90f614ba 100644
--- a/cpp/src/Ice/PropertiesAdminI.cpp
+++ b/cpp/src/Ice/PropertiesAdminI.cpp
@@ -44,8 +44,15 @@ PropertiesAdminI::getPropertiesForPrefix(const string& prefix, const Current&)
}
void
+#ifdef ICE_CPP11_MAPPING
+PropertiesAdminI::setProperties_async(const PropertyDict& props,
+ function<void ()> response,
+ function<void (const ::std::exception_ptr&)>,
+ const Current&)
+#else
PropertiesAdminI::setProperties_async(const AMD_PropertiesAdmin_setPropertiesPtr& cb, const PropertyDict& props,
- const Current&)
+ const Current&)
+#endif
{
Lock sync(*this);
@@ -164,7 +171,11 @@ PropertiesAdminI::setProperties_async(const AMD_PropertiesAdmin_setPropertiesPtr
// Send the response now so that we do not block the client during
// the call to the update callback.
//
+#ifdef ICE_CPP11_MAPPING
+ response();
+#else
cb->ice_response();
+#endif
//
// Copy the callbacks to allow callbacks to update the callbacks.
diff --git a/cpp/src/Ice/PropertiesAdminI.h b/cpp/src/Ice/PropertiesAdminI.h
index 46553e06b1d..789a6aee6d5 100644
--- a/cpp/src/Ice/PropertiesAdminI.h
+++ b/cpp/src/Ice/PropertiesAdminI.h
@@ -27,7 +27,13 @@ public:
virtual std::string getProperty(const std::string&, const Ice::Current&);
virtual Ice::PropertyDict getPropertiesForPrefix(const std::string&, const Ice::Current&);
+
+#ifdef ICE_CPP11_MAPPING
+ virtual void setProperties_async(const ::Ice::PropertyDict&, ::std::function<void ()>,
+ ::std::function<void (const ::std::exception_ptr&)>, const Ice::Current&);
+#else
virtual void setProperties_async(const Ice::AMD_PropertiesAdmin_setPropertiesPtr&, const Ice::PropertyDict&, const Ice::Current&);
+#endif
virtual void addUpdateCallback(const Ice::PropertiesAdminUpdateCallbackPtr&);
virtual void removeUpdateCallback(const Ice::PropertiesAdminUpdateCallbackPtr&);
@@ -38,7 +44,7 @@ private:
const Ice::LoggerPtr _logger;
std::vector<Ice::PropertiesAdminUpdateCallbackPtr> _updateCallbacks;
};
-typedef IceUtil::Handle<PropertiesAdminI> PropertiesAdminIPtr;
+ICE_DEFINE_PTR(PropertiesAdminIPtr, PropertiesAdminI);
}
diff --git a/cpp/src/Ice/PropertiesI.cpp b/cpp/src/Ice/PropertiesI.cpp
index 83c120f5607..136596187c1 100644
--- a/cpp/src/Ice/PropertiesI.cpp
+++ b/cpp/src/Ice/PropertiesI.cpp
@@ -435,7 +435,7 @@ PropertiesPtr
Ice::PropertiesI::clone()
{
IceUtil::Mutex::Lock sync(*this);
- return new PropertiesI(this);
+ return ICE_MAKE_SHARED(PropertiesI, this);
}
set<string>
diff --git a/cpp/src/Ice/PropertiesI.h b/cpp/src/Ice/PropertiesI.h
index d3b1bcee3c5..e4190cdf7da 100644
--- a/cpp/src/Ice/PropertiesI.h
+++ b/cpp/src/Ice/PropertiesI.h
@@ -19,10 +19,11 @@
namespace Ice
{
-class PropertiesI : public Properties, public IceUtil::Mutex
+class PropertiesI : public Properties,
+ public IceUtil::Mutex
{
public:
-
+
virtual std::string getProperty(const std::string&);
virtual std::string getPropertyWithDefault(const std::string&, const std::string&);
virtual Ice::Int getPropertyAsInt(const std::string&);
@@ -40,10 +41,11 @@ public:
std::set<std::string> getUnusedProperties();
+ PropertiesI(const PropertiesI*);
+
private:
PropertiesI(const IceUtil::StringConverterPtr&);
PropertiesI(StringSeq&, const PropertiesPtr&, const IceUtil::StringConverterPtr&);
- PropertiesI(const PropertiesI*);
friend ICE_API PropertiesPtr createProperties();
friend ICE_API PropertiesPtr createProperties(StringSeq&, const PropertiesPtr&);
diff --git a/cpp/src/Ice/Protocol.cpp b/cpp/src/Ice/Protocol.cpp
index 01f35c19a04..91f07b40ae9 100644
--- a/cpp/src/Ice/Protocol.cpp
+++ b/cpp/src/Ice/Protocol.cpp
@@ -121,11 +121,11 @@ namespace Ice
const EncodingVersion currentEncoding = { IceInternal::encodingMajor, IceInternal::encodingMinor };
const ProtocolVersion currentProtocol = { IceInternal::protocolMajor, IceInternal::protocolMinor };
-
//
// The encoding to use for protocol messages, this version is tied to
// the protocol version.
//
+
const EncodingVersion currentProtocolEncoding = { IceInternal::protocolEncodingMajor,
IceInternal::protocolEncodingMinor };
diff --git a/cpp/src/Ice/Proxy.cpp b/cpp/src/Ice/Proxy.cpp
index 48e85f9dc36..58b91db04ca 100644
--- a/cpp/src/Ice/Proxy.cpp
+++ b/cpp/src/Ice/Proxy.cpp
@@ -29,6 +29,11 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+namespace Ice
+{
+const Context noExplicitContext;
+}
+
namespace
{
@@ -42,12 +47,487 @@ const string ice_flushBatchRequests_name = "ice_flushBatchRequests";
}
-::Ice::ObjectPrx
-IceInternal::checkedCastImpl(const ObjectPrx& b, const string& f, const string& typeId, const Context* context)
+#ifdef ICE_CPP11_MAPPING // C++11 mapping
+
+bool
+Ice::ObjectPrx::operator==(const ObjectPrx& r) const
+{
+ return _reference == r._reference;
+}
+
+bool
+Ice::ObjectPrx::operator!=(const ObjectPrx& r) const
+{
+ return _reference != r._reference;
+}
+
+bool
+Ice::ObjectPrx::operator<(const ObjectPrx& r) const
{
- if(b)
+ return _reference < r._reference;
+}
+
+bool
+Ice::ObjectPrx::ice_isA(const string& typeId, const ::Ice::Context& context)
+{
+ promise<bool> p;
+ ice_isA_async(typeId,
+ [&](bool value)
+ {
+ p.set_value(value);
+ },
+ [&](exception_ptr ex)
+ {
+ p.set_exception(move(ex));
+ },
+ nullptr, context);
+ return p.get_future().get();
+}
+
+function<void()>
+Ice::ObjectPrx::ice_isA_async(const string& typeId,
+ function<void (bool)> response,
+ function<void (exception_ptr)> exception,
+ function<void (bool)> sent,
+ const ::Ice::Context& context)
+{
+ return TwowayClosureCallback::invoke(ice_isA_name, shared_from_this(), OperationMode::Nonmutating, DefaultFormat,
+ [&typeId](IceInternal::BasicStream* os)
+ {
+ os->write(typeId);
+ },
+ false,
+ [response = move(response)](IceInternal::BasicStream* is)
+ {
+ bool ret;
+ is->read(ret);
+ is->endReadEncaps();
+ if(response)
+ {
+ response(ret);
+ }
+ },
+ nullptr, move(exception), move(sent), context);
+}
+
+void
+Ice::ObjectPrx::ice_ping(const ::Ice::Context& context)
+{
+ switch(_reference->getMode())
{
- ObjectPrx bb = b->ice_facet(f);
+ case Reference::ModeTwoway:
+ {
+ promise<void> p;
+ ice_ping_async(
+ [&]()
+ {
+ p.set_value();
+ },
+ [&](exception_ptr ex)
+ {
+ p.set_exception(move(ex));
+ },
+ nullptr, context);
+ p.get_future().get();
+ break;
+ }
+ case Reference::ModeOneway:
+ case Reference::ModeDatagram:
+ {
+ promise<void> p;
+ ice_ping_async(
+ nullptr,
+ [&](exception_ptr ex)
+ {
+ p.set_exception(move(ex));
+ },
+ [&](bool)
+ {
+ p.set_value();
+ },
+ context);
+ p.get_future().get();
+ break;
+ }
+ case Reference::ModeBatchOneway:
+ case Reference::ModeBatchDatagram:
+ {
+ ice_ping_async(nullptr, nullptr, nullptr, context);
+ }
+ }
+}
+
+function<void()>
+Ice::ObjectPrx::ice_ping_async(function<void ()> response,
+ function<void (exception_ptr)> exception,
+ function<void (bool)> sent,
+ const ::Ice::Context& context)
+{
+ return OnewayClosureCallback::invoke(ice_ping_name, shared_from_this(), OperationMode::Nonmutating, DefaultFormat,
+ nullptr, response, exception, sent, context);
+}
+
+string
+Ice::ObjectPrx::ice_id(const ::Ice::Context& context)
+{
+ promise<string> p;
+ ice_id_async(
+ [&](string id)
+ {
+ p.set_value(move(id));
+ },
+ [&](exception_ptr ex)
+ {
+ p.set_exception(move(ex));
+ },
+ nullptr, context);
+ return p.get_future().get();
+}
+
+function<void()>
+Ice::ObjectPrx::ice_id_async(function<void (string)> response,
+ function<void (exception_ptr)> exception,
+ function<void (bool)> sent,
+ const ::Ice::Context& context)
+{
+ return TwowayClosureCallback::invoke(
+ ice_id_name, shared_from_this(), OperationMode::Nonmutating, DefaultFormat, nullptr, false,
+ [response](IceInternal::BasicStream* is)
+ {
+ string ret;
+ is->read(ret);
+ is->endReadEncaps();
+ if(response)
+ {
+ response(move(ret));
+ }
+ },
+ nullptr, exception, sent, context);
+}
+
+
+vector<string>
+Ice::ObjectPrx::ice_ids(const ::Ice::Context& context)
+{
+ promise<vector<string>> p;
+ ice_ids_async(
+ [&](vector<string> ids)
+ {
+ p.set_value(move(ids));
+ },
+ [&](exception_ptr ex)
+ {
+ p.set_exception(move(ex));
+ },
+ nullptr, context);
+ return p.get_future().get();
+}
+
+function<void()>
+Ice::ObjectPrx::ice_ids_async(function<void (vector<string>)> response,
+ function<void (exception_ptr)> exception,
+ function<void (bool)> sent,
+ const ::Ice::Context& context)
+{
+ return TwowayClosureCallback::invoke(
+ ice_ids_name, shared_from_this(), OperationMode::Nonmutating, DefaultFormat, nullptr, false,
+ [response](IceInternal::BasicStream* is)
+ {
+ vector<string> ret;
+ is->read(ret);
+ is->endReadEncaps();
+ if(response)
+ {
+ response(move(ret));
+ }
+ },
+ nullptr, exception, sent, context);
+}
+
+function<void ()>
+Ice::ObjectPrx::ice_getConnection_async(
+ function<void (shared_ptr<::Ice::Connection>)> response,
+ function<void (exception_ptr)> exception)
+{
+
+ class ConnectionCallback : public CallbackBase
+ {
+ public:
+
+ ConnectionCallback(function<void (shared_ptr<::Ice::Connection>)> response,
+ function<void (exception_ptr)> exception,
+ shared_ptr<ObjectPrx> proxy) :
+ _response(move(response)),
+ _exception(move(exception)),
+ _proxy(move(proxy))
+ {
+ }
+
+ virtual void sent(const AsyncResultPtr&) const {}
+
+ virtual bool hasSentCallback() const
+ {
+ return false;
+ }
+
+
+ virtual void
+ completed(const ::Ice::AsyncResultPtr& result) const
+ {
+ shared_ptr<::Ice::Connection> conn;
+ try
+ {
+ AsyncResult::__check(result, _proxy.get(), ice_getConnection_name);
+ result->__wait();
+ conn = _proxy->ice_getCachedConnection();
+ }
+ catch(const ::Ice::Exception&)
+ {
+ _exception(current_exception());
+ }
+
+ if(_response)
+ {
+ _response(move(conn));
+ }
+ }
+
+ private:
+
+ function<void (shared_ptr<::Ice::Connection>)> _response;
+ function<void (exception_ptr)> _exception;
+ shared_ptr<ObjectPrx> _proxy;
+ };
+
+
+ auto result = make_shared<ProxyGetConnection>(shared_from_this(), ice_getConnection_name,
+ make_shared<ConnectionCallback>(move(response), move(exception), shared_from_this()));
+ try
+ {
+ result->invoke();
+ }
+ catch(const Exception& ex)
+ {
+ result->abort(ex);
+ }
+
+ return [result]()
+ {
+ result->cancel();
+ };
+}
+
+void
+Ice::ObjectPrx::ice_flushBatchRequests()
+{
+ promise<void> p;
+ ice_flushBatchRequests_async(
+ [&](exception_ptr ex)
+ {
+ p.set_exception(ex);
+ },
+ [&](bool)
+ {
+ p.set_value();
+ });
+ p.get_future().get();
+}
+
+function<void ()>
+Ice::ObjectPrx::ice_flushBatchRequests_async(function<void (exception_ptr)> exception, function<void (bool)> sent)
+{
+ class FlushBatchRequestsCallback : public CallbackBase
+ {
+ public:
+
+ FlushBatchRequestsCallback(function<void (exception_ptr)> exception,
+ function<void (bool)> sent,
+ shared_ptr<ObjectPrx> proxy) :
+ _exception(move(exception)),
+ _sent(move(sent)),
+ _proxy(move(proxy))
+ {
+ }
+
+ virtual void sent(const AsyncResultPtr& result) const
+ {
+ try
+ {
+ AsyncResult::__check(result, _proxy.get(), ice_flushBatchRequests_name);
+ result->__wait();
+ }
+ catch(const ::Ice::Exception&)
+ {
+ _exception(current_exception());
+ }
+
+ if(_sent)
+ {
+ _sent(result->sentSynchronously());
+ }
+ }
+
+ virtual bool hasSentCallback() const
+ {
+ return true;
+ }
+
+
+ virtual void
+ completed(const ::Ice::AsyncResultPtr&) const
+ {
+ }
+
+ private:
+
+ function<void (exception_ptr)> _exception;
+ function<void (bool)> _sent;
+ shared_ptr<ObjectPrx> _proxy;
+ };
+
+ auto result = make_shared<ProxyFlushBatchAsync>(shared_from_this(), ice_flushBatchRequests_name,
+ make_shared<FlushBatchRequestsCallback>(exception, sent, shared_from_this()));
+ try
+ {
+ result->invoke();
+ }
+ catch(const Exception& ex)
+ {
+ result->abort(ex);
+ }
+ return [result]()
+ {
+ result->cancel();
+ };
+}
+
+bool
+Ice::ObjectPrx::ice_invoke(const string& operation,
+ ::Ice::OperationMode mode,
+ const vector<::Ice::Byte>& inParams,
+ vector<::Ice::Byte>& pOutParams,
+ const ::Ice::Context& context)
+{
+ promise<bool> p;
+ ice_invoke_async(operation, mode, inParams,
+ [&](bool ok, vector<::Ice::Byte> outParams)
+ {
+ pOutParams = move(outParams);
+ p.set_value(ok);
+ },
+ [&](exception_ptr ex)
+ {
+ p.set_exception(move(ex));
+ },
+ nullptr, context);
+ return p.get_future().get();
+}
+
+function<void ()>
+Ice::ObjectPrx::ice_invoke_async(const string& operation, ::Ice::OperationMode mode,
+ const vector<::Ice::Byte>& inEncaps,
+ function<void (bool, vector<::Ice::Byte>)> response,
+ function<void (exception_ptr)> exception,
+ function<void (bool)> sent,
+ const ::Ice::Context& context)
+{
+ class InvokeCallback : public CallbackBase
+ {
+ public:
+
+ InvokeCallback(function<void (bool, vector<::Ice::Byte>)> response,
+ function<void (exception_ptr)> exception,
+ shared_ptr<ObjectPrx> proxy) :
+ _response(move(response)),
+ _exception(move(exception)),
+ _proxy(move(proxy))
+ {
+ }
+
+ virtual void sent(const AsyncResultPtr&) const {}
+
+ virtual bool hasSentCallback() const
+ {
+ return false;
+ }
+
+
+ virtual void
+ completed(const ::Ice::AsyncResultPtr& result) const
+ {
+ try
+ {
+ AsyncResult::__check(result, _proxy.get(), ice_invoke_name);
+ bool ok = result->__wait();
+ if(_proxy->_reference->getMode() == Reference::ModeTwoway)
+ {
+ const Byte* v;
+ Int sz;
+ result->__readParamEncaps(v, sz);
+ if(_response)
+ {
+ _response(ok, vector<Byte>(v, v + sz));
+ }
+ }
+ }
+ catch(const ::Ice::Exception&)
+ {
+ _exception(current_exception());
+ }
+ }
+
+ private:
+
+ function<void (bool, vector<::Ice::Byte>)> _response;
+ function<void (exception_ptr)> _exception;
+ shared_ptr<ObjectPrx> _proxy;
+ };
+
+ auto result = make_shared<OutgoingAsync>(shared_from_this(), ice_invoke_name,
+ make_shared<InvokeCallback>(move(response), move(exception), shared_from_this()));
+ try
+ {
+ result->prepare(operation, mode, &context);
+
+ pair<const Byte*, const Byte*> inPair;
+ if(inEncaps.empty())
+ {
+ inPair.first = inPair.second = 0;
+ }
+ else
+ {
+ inPair.first = &inEncaps[0];
+ inPair.second = inPair.first + inEncaps.size();
+ }
+
+ result->writeParamEncaps(&inEncaps[0], static_cast<Int>(inPair.second - inPair.first));
+ result->invoke();
+ }
+ catch(const Exception& ex)
+ {
+ result->abort(ex);
+ }
+
+ return [result]()
+ {
+ result->cancel();
+ };
+}
+
+shared_ptr<ObjectPrx>
+Ice::ObjectPrx::__newInstance() const
+{
+ return make_shared<ObjectPrx>();
+}
+
+#else // C++98 mapping
+
+::Ice::ObjectPrxPtr
+IceInternal::checkedCastImpl(const ObjectPrxPtr& b, const string& f, const string& typeId, const Context* context)
+{
+ if(b != ICE_NULLPTR)
+ {
+ ObjectPrxPtr bb = b->ice_facet(f);
try
{
if(context == 0 ? bb->ice_isA(typeId) : bb->ice_isA(typeId, *context))
@@ -65,10 +545,10 @@ IceInternal::checkedCastImpl(const ObjectPrx& b, const string& f, const string&
{
}
}
- return 0;
+ return ICE_NULLPTR;
}
-#ifdef ICE_CPP11
+#ifdef ICE_CPP11_COMPILER
IceInternal::Cpp11FnCallbackNC::Cpp11FnCallbackNC(const ::std::function<void (const ::Ice::Exception&)>& excb,
const ::std::function<void (bool)>& sentcb) :
@@ -153,24 +633,6 @@ IceProxy::Ice::Object::operator<(const Object& r) const
return _reference < r._reference;
}
-CommunicatorPtr
-IceProxy::Ice::Object::ice_getCommunicator() const
-{
- return _reference->getCommunicator();
-}
-
-string
-IceProxy::Ice::Object::ice_toString() const
-{
- //
- // Returns the stringified proxy. There's no need to convert the
- // string to a native string: a stringified proxy only contains
- // printable ASCII which is a subset of all native character sets.
- //
- return _reference->toString();
-}
-
-
bool
IceProxy::Ice::Object::ice_isA(const string& typeId, const Context* context)
{
@@ -227,7 +689,7 @@ IceProxy::Ice::Object::begin_ice_isA(const string& typeId,
return __result;
}
-#ifdef ICE_CPP11
+#ifdef ICE_CPP11_COMPILER
Ice::AsyncResultPtr
IceProxy::Ice::Object::__begin_ice_isA(const ::std::string& typeId,
@@ -838,14 +1300,199 @@ IceProxy::Ice::Object::___end_ice_invoke(pair<const Byte*, const Byte*>& outEnca
return ok;
}
+::Ice::AsyncResultPtr
+IceProxy::Ice::Object::begin_ice_flushBatchRequestsInternal(const ::IceInternal::CallbackBasePtr& del,
+ const ::Ice::LocalObjectPtr& cookie)
+{
+ ProxyFlushBatchAsyncPtr result = new ProxyFlushBatchAsync(this, ice_flushBatchRequests_name, del, cookie);
+ try
+ {
+ result->invoke();
+ }
+ catch(const Exception& ex)
+ {
+ result->abort(ex);
+ }
+ return result;
+}
+
+void
+IceProxy::Ice::Object::end_ice_flushBatchRequests(const AsyncResultPtr& result)
+{
+ AsyncResult::__check(result, this, ice_flushBatchRequests_name);
+ result->__wait();
+}
+
+Int
+IceProxy::Ice::Object::__hash() const
+{
+ return _reference->hash();
+}
+
+void
+IceProxy::Ice::Object::__invoke(Outgoing& __og) const
+{
+ //
+ // Helper for operations without out/return parameters and user
+ // exceptions.
+ //
+
+ bool __ok = __og.invoke();
+ if(__og.hasResponse())
+ {
+ if(!__ok)
+ {
+ try
+ {
+ __og.throwUserException();
+ }
+ catch(const ::Ice::UserException& __ex)
+ {
+ ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
+ throw __uue;
+ }
+ }
+ __og.readEmptyParams();
+ }
+}
+
+void
+IceProxy::Ice::Object::__end(const ::Ice::AsyncResultPtr& __result, const std::string& operation) const
+{
+ AsyncResult::__check(__result, this, operation);
+ bool __ok = __result->__wait();
+ if(_reference->getMode() == Reference::ModeTwoway)
+ {
+ if(!__ok)
+ {
+ try
+ {
+ __result->__throwUserException();
+ }
+ catch(const UserException& __ex)
+ {
+ throw UnknownUserException(__FILE__, __LINE__, __ex.ice_name());
+ }
+ }
+ __result->__readEmptyParams();
+ }
+}
+
+namespace IceProxy
+{
+
+namespace Ice
+{
+
+ostream&
+operator<<(ostream& os, const ::IceProxy::Ice::Object& p)
+{
+ return os << p.ice_toString();
+}
+
+}
+
+}
+
+IceProxy::Ice::Object*
+IceProxy::Ice::Object::__newInstance() const
+{
+ return new Object;
+}
+
+AsyncResultPtr
+IceProxy::Ice::Object::begin_ice_getConnectionInternal(const ::IceInternal::CallbackBasePtr& del,
+ const ::Ice::LocalObjectPtr& cookie)
+{
+ ProxyGetConnectionPtr result = new ProxyGetConnection(this, ice_getConnection_name, del, cookie);
+ try
+ {
+ result->invoke();
+ }
+ catch(const Exception& ex)
+ {
+ result->abort(ex);
+ }
+ return result;
+}
+
+ConnectionPtr
+IceProxy::Ice::Object::end_ice_getConnection(const AsyncResultPtr& __result)
+{
+ AsyncResult::__check(__result, this, ice_getConnection_name);
+ __result->__wait();
+ return ice_getCachedConnection();
+}
+
+void
+IceProxy::Ice::Object::ice_flushBatchRequests()
+{
+ ProxyFlushBatch og(ICE_SHARED_FROM_THIS, ice_flushBatchRequests_name);
+ og.invoke();
+}
+
+void
+IceProxy::Ice::Object::__checkTwowayOnly(const string& name) const
+{
+ //
+ // No mutex lock necessary, there is nothing mutable in this operation.
+ //
+ if(!ice_isTwoway())
+ {
+ TwowayOnlyException ex(__FILE__, __LINE__);
+ ex.operation = name;
+ throw ex;
+ }
+}
+
+void
+Ice::ice_writeObjectPrx(const OutputStreamPtr& out, const ObjectPrxPtr& v)
+{
+ out->write(v);
+}
+
+void
+Ice::ice_readObjectPrx(const InputStreamPtr& in, ObjectPrxPtr& v)
+{
+ in->read(v);
+}
+
+#endif
+
+#ifdef ICE_CPP11_MAPPING
+# define ICE_OBJECT_PRX Ice::ObjectPrx
+# define CONST_POINTER_CAST_OBJECT_PRX const_pointer_cast<ObjectPrx>(shared_from_this())
+#else
+# define ICE_OBJECT_PRX IceProxy::Ice::Object
+# define CONST_POINTER_CAST_OBJECT_PRX ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this))
+#endif
+
+//
+// methods common for both C++11/C++98 mappings
+//
+
+void
+ICE_OBJECT_PRX::__checkAsyncTwowayOnly(const string& name) const
+{
+ //
+ // No mutex lock necessary, there is nothing mutable in this operation.
+ //
+ if(!ice_isTwoway())
+ {
+ throw IceUtil::IllegalArgumentException(__FILE__,
+ __LINE__,
+ "`" + name + "' can only be called with a twoway proxy");
+ }
+}
+
Identity
-IceProxy::Ice::Object::ice_getIdentity() const
+ICE_OBJECT_PRX::ice_getIdentity() const
{
return _reference->getIdentity();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_identity(const Identity& newIdentity) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_identity(const Identity& newIdentity) const
{
if(newIdentity.name.empty())
{
@@ -853,113 +1500,121 @@ IceProxy::Ice::Object::ice_identity(const Identity& newIdentity) const
}
if(newIdentity == _reference->getIdentity())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = new Object;
+#ifdef ICE_CPP11_MAPPING
+ auto proxy = make_shared<ObjectPrx>();
+#else
+ ObjectPrxPtr proxy = new IceProxy::Ice::Object;
+#endif
proxy->setup(_reference->changeIdentity(newIdentity));
return proxy;
}
}
Context
-IceProxy::Ice::Object::ice_getContext() const
+ICE_OBJECT_PRX::ice_getContext() const
{
return _reference->getContext()->getValue();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_context(const Context& newContext) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_context(const Context& newContext) const
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeContext(newContext));
return proxy;
}
const string&
-IceProxy::Ice::Object::ice_getFacet() const
+ICE_OBJECT_PRX::ice_getFacet() const
{
return _reference->getFacet();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_facet(const string& newFacet) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_facet(const string& newFacet) const
{
if(newFacet == _reference->getFacet())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = new Object;
+#ifdef ICE_CPP11_MAPPING
+ auto proxy = make_shared<ObjectPrx>();
+#else
+ ObjectPrx proxy = new IceProxy::Ice::Object;
+#endif
proxy->setup(_reference->changeFacet(newFacet));
return proxy;
}
}
string
-IceProxy::Ice::Object::ice_getAdapterId() const
+ICE_OBJECT_PRX::ice_getAdapterId() const
{
return _reference->getAdapterId();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_adapterId(const string& newAdapterId) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_adapterId(const string& newAdapterId) const
{
if(newAdapterId == _reference->getAdapterId())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeAdapterId(newAdapterId));
return proxy;
}
}
EndpointSeq
-IceProxy::Ice::Object::ice_getEndpoints() const
+ICE_OBJECT_PRX::ice_getEndpoints() const
{
vector<EndpointIPtr> endpoints = _reference->getEndpoints();
EndpointSeq retSeq;
for(vector<EndpointIPtr>::const_iterator p = endpoints.begin(); p != endpoints.end(); ++p)
{
- retSeq.push_back(EndpointPtr::dynamicCast(*p));
+ retSeq.push_back(ICE_DYNAMIC_CAST(Endpoint, *p));
}
return retSeq;
}
-ObjectPrx
-IceProxy::Ice::Object::ice_endpoints(const EndpointSeq& newEndpoints) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_endpoints(const EndpointSeq& newEndpoints) const
{
vector<EndpointIPtr> endpoints;
for(EndpointSeq::const_iterator p = newEndpoints.begin(); p != newEndpoints.end(); ++p)
{
- endpoints.push_back(EndpointIPtr::dynamicCast(*p));
+ endpoints.push_back(ICE_DYNAMIC_CAST(EndpointI, *p));
}
if(endpoints == _reference->getEndpoints())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeEndpoints(endpoints));
return proxy;
}
}
Int
-IceProxy::Ice::Object::ice_getLocatorCacheTimeout() const
+ICE_OBJECT_PRX::ice_getLocatorCacheTimeout() const
{
return _reference->getLocatorCacheTimeout();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_locatorCacheTimeout(Int newTimeout) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_locatorCacheTimeout(Int newTimeout) const
{
if(newTimeout < -1)
{
@@ -969,196 +1624,204 @@ IceProxy::Ice::Object::ice_locatorCacheTimeout(Int newTimeout) const
}
if(newTimeout == _reference->getLocatorCacheTimeout())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeLocatorCacheTimeout(newTimeout));
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isConnectionCached() const
+ICE_OBJECT_PRX::ice_isConnectionCached() const
{
return _reference->getCacheConnection();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_connectionCached(bool newCache) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_connectionCached(bool newCache) const
{
if(newCache == _reference->getCacheConnection())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeCacheConnection(newCache));
return proxy;
}
}
EndpointSelectionType
-IceProxy::Ice::Object::ice_getEndpointSelection() const
+ICE_OBJECT_PRX::ice_getEndpointSelection() const
{
return _reference->getEndpointSelection();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_endpointSelection(EndpointSelectionType newType) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_endpointSelection(EndpointSelectionType newType) const
{
if(newType == _reference->getEndpointSelection())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeEndpointSelection(newType));
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isSecure() const
+ICE_OBJECT_PRX::ice_isSecure() const
{
return _reference->getSecure();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_secure(bool b) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_secure(bool b) const
{
if(b == _reference->getSecure())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeSecure(b));
return proxy;
}
}
::Ice::EncodingVersion
-IceProxy::Ice::Object::ice_getEncodingVersion() const
+ICE_OBJECT_PRX::ice_getEncodingVersion() const
{
return _reference->getEncoding();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_encodingVersion(const ::Ice::EncodingVersion& encoding) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_encodingVersion(const ::Ice::EncodingVersion& encoding) const
{
if(encoding == _reference->getEncoding())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeEncoding(encoding));
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isPreferSecure() const
+ICE_OBJECT_PRX::ice_isPreferSecure() const
{
return _reference->getPreferSecure();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_preferSecure(bool b) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_preferSecure(bool b) const
{
if(b == _reference->getPreferSecure())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changePreferSecure(b));
return proxy;
}
}
-RouterPrx
-IceProxy::Ice::Object::ice_getRouter() const
+RouterPrxPtr
+ICE_OBJECT_PRX::ice_getRouter() const
{
RouterInfoPtr ri = _reference->getRouterInfo();
- return ri ? ri->getRouter() : RouterPrx();
+#ifdef ICE_CPP11_MAPPING
+ return ri ? ri->getRouter() : nullptr;
+#else
+ return ri ? ri->getRouter() : RouterPrxPtr();
+#endif
}
-ObjectPrx
-IceProxy::Ice::Object::ice_router(const RouterPrx& router) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_router(const RouterPrxPtr& router) const
{
ReferencePtr ref = _reference->changeRouter(router);
if(ref == _reference)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(ref);
return proxy;
}
}
-LocatorPrx
-IceProxy::Ice::Object::ice_getLocator() const
+LocatorPrxPtr
+ICE_OBJECT_PRX::ice_getLocator() const
{
LocatorInfoPtr ri = _reference->getLocatorInfo();
- return ri ? ri->getLocator() : LocatorPrx();
+#ifdef ICE_CPP11_MAPPING
+ return ri ? ri->getLocator() : nullptr;
+#else
+ return ri ? ri->getLocator() : LocatorPrxPtr();
+#endif
}
-ObjectPrx
-IceProxy::Ice::Object::ice_locator(const LocatorPrx& locator) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_locator(const LocatorPrxPtr& locator) const
{
ReferencePtr ref = _reference->changeLocator(locator);
if(ref == _reference)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(ref);
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isCollocationOptimized() const
+ICE_OBJECT_PRX::ice_isCollocationOptimized() const
{
return _reference->getCollocationOptimized();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_collocationOptimized(bool b) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_collocationOptimized(bool b) const
{
if(b == _reference->getCollocationOptimized())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeCollocationOptimized(b));
return proxy;
}
}
Int
-IceProxy::Ice::Object::ice_getInvocationTimeout() const
+ICE_OBJECT_PRX::ice_getInvocationTimeout() const
{
return _reference->getInvocationTimeout();
}
-ObjectPrx
-IceProxy::Ice::Object::ice_invocationTimeout(Int newTimeout) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_invocationTimeout(Int newTimeout) const
{
if(newTimeout < 1 && newTimeout != -1 && newTimeout != -2)
{
@@ -1168,139 +1831,139 @@ IceProxy::Ice::Object::ice_invocationTimeout(Int newTimeout) const
}
if(newTimeout == _reference->getInvocationTimeout())
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeInvocationTimeout(newTimeout));
return proxy;
}
}
-ObjectPrx
-IceProxy::Ice::Object::ice_twoway() const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_twoway() const
{
if(_reference->getMode() == Reference::ModeTwoway)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeMode(Reference::ModeTwoway));
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isTwoway() const
+ICE_OBJECT_PRX::ice_isTwoway() const
{
return _reference->getMode() == Reference::ModeTwoway;
}
-ObjectPrx
-IceProxy::Ice::Object::ice_oneway() const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_oneway() const
{
if(_reference->getMode() == Reference::ModeOneway)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeMode(Reference::ModeOneway));
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isOneway() const
+ICE_OBJECT_PRX::ice_isOneway() const
{
return _reference->getMode() == Reference::ModeOneway;
}
-ObjectPrx
-IceProxy::Ice::Object::ice_batchOneway() const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_batchOneway() const
{
if(_reference->getMode() == Reference::ModeBatchOneway)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeMode(Reference::ModeBatchOneway));
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isBatchOneway() const
+ICE_OBJECT_PRX::ice_isBatchOneway() const
{
return _reference->getMode() == Reference::ModeBatchOneway;
}
-ObjectPrx
-IceProxy::Ice::Object::ice_datagram() const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_datagram() const
{
if(_reference->getMode() == Reference::ModeDatagram)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeMode(Reference::ModeDatagram));
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isDatagram() const
+ICE_OBJECT_PRX::ice_isDatagram() const
{
return _reference->getMode() == Reference::ModeDatagram;
}
-ObjectPrx
-IceProxy::Ice::Object::ice_batchDatagram() const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_batchDatagram() const
{
if(_reference->getMode() == Reference::ModeBatchDatagram)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(_reference->changeMode(Reference::ModeBatchDatagram));
return proxy;
}
}
bool
-IceProxy::Ice::Object::ice_isBatchDatagram() const
+ICE_OBJECT_PRX::ice_isBatchDatagram() const
{
return _reference->getMode() == Reference::ModeBatchDatagram;
}
-ObjectPrx
-IceProxy::Ice::Object::ice_compress(bool b) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_compress(bool b) const
{
ReferencePtr ref = _reference->changeCompress(b);
if(ref == _reference)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(ref);
return proxy;
}
}
-ObjectPrx
-IceProxy::Ice::Object::ice_timeout(int t) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_timeout(int t) const
{
if(t < 1 && t != -1)
{
@@ -1311,42 +1974,42 @@ IceProxy::Ice::Object::ice_timeout(int t) const
ReferencePtr ref = _reference->changeTimeout(t);
if(ref == _reference)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(ref);
return proxy;
}
}
-ObjectPrx
-IceProxy::Ice::Object::ice_connectionId(const string& id) const
+ObjectPrxPtr
+ICE_OBJECT_PRX::ice_connectionId(const string& id) const
{
ReferencePtr ref = _reference->changeConnectionId(id);
if(ref == _reference)
{
- return ObjectPrx(const_cast< ::IceProxy::Ice::Object*>(this));
+ return CONST_POINTER_CAST_OBJECT_PRX;
}
else
{
- ObjectPrx proxy = __newInstance();
+ ObjectPrxPtr proxy = __newInstance();
proxy->setup(ref);
return proxy;
}
}
string
-IceProxy::Ice::Object::ice_getConnectionId() const
+ICE_OBJECT_PRX::ice_getConnectionId() const
{
return _reference->getConnectionId();
}
ConnectionPtr
-IceProxy::Ice::Object::ice_getConnection()
+ICE_OBJECT_PRX::ice_getConnection()
{
- InvocationObserver observer(this, "ice_getConnection", 0);
+ InvocationObserver observer(ICE_SHARED_FROM_THIS, "ice_getConnection", 0);
int cnt = 0;
while(true)
{
@@ -1364,7 +2027,7 @@ IceProxy::Ice::Object::ice_getConnection()
{
try
{
- int interval = __handleException(ex, handler, Idempotent, false, cnt);
+ int interval = __handleException(ex, handler, ICE_ENUM(OperationMode, Idempotent), false, cnt);
observer.retried();
if(interval > 0)
{
@@ -1380,32 +2043,8 @@ IceProxy::Ice::Object::ice_getConnection()
}
}
-AsyncResultPtr
-IceProxy::Ice::Object::begin_ice_getConnectionInternal(const ::IceInternal::CallbackBasePtr& del,
- const ::Ice::LocalObjectPtr& cookie)
-{
- ProxyGetConnectionPtr result = new ProxyGetConnection(this, ice_getConnection_name, del, cookie);
- try
- {
- result->invoke();
- }
- catch(const Exception& ex)
- {
- result->abort(ex);
- }
- return result;
-}
-
-ConnectionPtr
-IceProxy::Ice::Object::end_ice_getConnection(const AsyncResultPtr& __result)
-{
- AsyncResult::__check(__result, this, ice_getConnection_name);
- __result->__wait();
- return ice_getCachedConnection();
-}
-
ConnectionPtr
-IceProxy::Ice::Object::ice_getCachedConnection() const
+ICE_OBJECT_PRX::ice_getCachedConnection() const
{
RequestHandlerPtr __handler;
{
@@ -1427,51 +2066,21 @@ IceProxy::Ice::Object::ice_getCachedConnection() const
}
void
-IceProxy::Ice::Object::ice_flushBatchRequests()
-{
- ProxyFlushBatch og(this, ice_flushBatchRequests_name);
- og.invoke();
-}
-
-::Ice::AsyncResultPtr
-IceProxy::Ice::Object::begin_ice_flushBatchRequestsInternal(const ::IceInternal::CallbackBasePtr& del,
- const ::Ice::LocalObjectPtr& cookie)
-{
- ProxyFlushBatchAsyncPtr result = new ProxyFlushBatchAsync(this, ice_flushBatchRequests_name, del, cookie);
- try
- {
- result->invoke();
- }
- catch(const Exception& ex)
- {
- result->abort(ex);
- }
- return result;
-}
-
-void
-IceProxy::Ice::Object::end_ice_flushBatchRequests(const AsyncResultPtr& result)
+ICE_OBJECT_PRX::setup(const ReferencePtr& ref)
{
- AsyncResult::__check(result, this, ice_flushBatchRequests_name);
- result->__wait();
-}
+ //
+ // No need to synchronize "*this", as this operation is only
+ // called upon initialization.
+ //
-Int
-IceProxy::Ice::Object::__hash() const
-{
- return _reference->hash();
-}
+ assert(!_reference);
+ assert(!_requestHandler);
-void
-IceProxy::Ice::Object::__copyFrom(const ObjectPrx& from)
-{
- IceUtil::Mutex::Lock sync(from->_mutex);
- _reference = from->_reference;
- _requestHandler = from->_requestHandler;
+ _reference = ref;
}
int
-IceProxy::Ice::Object::__handleException(const Exception& ex,
+ICE_OBJECT_PRX::__handleException(const Exception& ex,
const RequestHandlerPtr& handler,
OperationMode mode,
bool sent,
@@ -1496,7 +2105,7 @@ IceProxy::Ice::Object::__handleException(const Exception& ex,
//
const LocalException* localEx = dynamic_cast<const LocalException*>(&ex);
if(localEx && (!sent ||
- mode == Nonmutating || mode == Idempotent ||
+ mode == ICE_ENUM(OperationMode, Nonmutating) || mode == ICE_ENUM(OperationMode, Idempotent) ||
dynamic_cast<const CloseConnectionException*>(&ex) ||
dynamic_cast<const ObjectNotExistException*>(&ex)))
{
@@ -1519,101 +2128,8 @@ IceProxy::Ice::Object::__handleException(const Exception& ex,
return 0; // Keep the compiler happy.
}
-void
-IceProxy::Ice::Object::__checkTwowayOnly(const string& name) const
-{
- //
- // No mutex lock necessary, there is nothing mutable in this operation.
- //
- if(!ice_isTwoway())
- {
- TwowayOnlyException ex(__FILE__, __LINE__);
- ex.operation = name;
- throw ex;
- }
-}
-
-void
-IceProxy::Ice::Object::__checkAsyncTwowayOnly(const string& name) const
-{
- //
- // No mutex lock necessary, there is nothing mutable in this operation.
- //
- if(!ice_isTwoway())
- {
- throw IceUtil::IllegalArgumentException(__FILE__,
- __LINE__,
- "`" + name + "' can only be called with a twoway proxy");
- }
-}
-
-void
-IceProxy::Ice::Object::__invoke(Outgoing& __og) const
-{
- //
- // Helper for operations without out/return parameters and user
- // exceptions.
- //
-
- bool __ok = __og.invoke();
- if(__og.hasResponse())
- {
- if(!__ok)
- {
- try
- {
- __og.throwUserException();
- }
- catch(const ::Ice::UserException& __ex)
- {
- ::Ice::UnknownUserException __uue(__FILE__, __LINE__, __ex.ice_name());
- throw __uue;
- }
- }
- __og.readEmptyParams();
- }
-}
-
-void
-IceProxy::Ice::Object::__end(const ::Ice::AsyncResultPtr& __result, const std::string& operation) const
-{
- AsyncResult::__check(__result, this, operation);
- bool __ok = __result->__wait();
- if(_reference->getMode() == Reference::ModeTwoway)
- {
- if(!__ok)
- {
- try
- {
- __result->__throwUserException();
- }
- catch(const UserException& __ex)
- {
- throw UnknownUserException(__FILE__, __LINE__, __ex.ice_name());
- }
- }
- __result->__readEmptyParams();
- }
-}
-
-namespace IceProxy
-{
-
-namespace Ice
-{
-
-ostream&
-operator<<(ostream& os, const ::IceProxy::Ice::Object& p)
-{
- return os << p.ice_toString();
-}
-
-}
-
-}
-
::IceInternal::RequestHandlerPtr
-IceProxy::Ice::Object::__getRequestHandler()
+ICE_OBJECT_PRX::__getRequestHandler()
{
RequestHandlerPtr handler;
if(_reference->getCacheConnection())
@@ -1624,11 +2140,11 @@ IceProxy::Ice::Object::__getRequestHandler()
return _requestHandler;
}
}
- return _reference->getRequestHandler(this);
+ return _reference->getRequestHandler(ICE_SHARED_FROM_THIS);
}
IceInternal::BatchRequestQueuePtr
-IceProxy::Ice::Object::__getBatchRequestQueue()
+ICE_OBJECT_PRX::__getBatchRequestQueue()
{
IceUtil::Mutex::Lock sync(_mutex);
if(!_batchRequestQueue)
@@ -1639,7 +2155,7 @@ IceProxy::Ice::Object::__getBatchRequestQueue()
}
::IceInternal::RequestHandlerPtr
-IceProxy::Ice::Object::__setRequestHandler(const ::IceInternal::RequestHandlerPtr& handler)
+ICE_OBJECT_PRX::__setRequestHandler(const ::IceInternal::RequestHandlerPtr& handler)
{
if(_reference->getCacheConnection())
{
@@ -1654,7 +2170,7 @@ IceProxy::Ice::Object::__setRequestHandler(const ::IceInternal::RequestHandlerPt
}
void
-IceProxy::Ice::Object::__updateRequestHandler(const ::IceInternal::RequestHandlerPtr& previous,
+ICE_OBJECT_PRX::__updateRequestHandler(const ::IceInternal::RequestHandlerPtr& previous,
const ::IceInternal::RequestHandlerPtr& handler)
{
if(_reference->getCacheConnection() && previous)
@@ -1674,28 +2190,33 @@ IceProxy::Ice::Object::__updateRequestHandler(const ::IceInternal::RequestHandle
}
}
-IceProxy::Ice::Object*
-IceProxy::Ice::Object::__newInstance() const
+void
+ICE_OBJECT_PRX::__copyFrom(const ObjectPrxPtr& from)
{
- return new Object;
+ IceUtil::Mutex::Lock sync(from->_mutex);
+ _reference = from->_reference;
+ _requestHandler = from->_requestHandler;
}
-void
-IceProxy::Ice::Object::setup(const ReferencePtr& ref)
+CommunicatorPtr
+ICE_OBJECT_PRX::ice_getCommunicator() const
+{
+ return _reference->getCommunicator();
+}
+
+string
+ICE_OBJECT_PRX::ice_toString() const
{
//
- // No need to synchronize "*this", as this operation is only
- // called upon initialization.
+ // Returns the stringified proxy. There's no need to convert the
+ // string to a native string: a stringified proxy only contains
+ // printable ASCII which is a subset of all native character sets.
//
-
- assert(!_reference);
- assert(!_requestHandler);
-
- _reference = ref;
+ return _reference->toString();
}
bool
-Ice::proxyIdentityLess(const ObjectPrx& lhs, const ObjectPrx& rhs)
+Ice::proxyIdentityLess(const ObjectPrxPtr& lhs, const ObjectPrxPtr& rhs)
{
if(!lhs && !rhs)
{
@@ -1716,7 +2237,7 @@ Ice::proxyIdentityLess(const ObjectPrx& lhs, const ObjectPrx& rhs)
}
bool
-Ice::proxyIdentityEqual(const ObjectPrx& lhs, const ObjectPrx& rhs)
+Ice::proxyIdentityEqual(const ObjectPrxPtr& lhs, const ObjectPrxPtr& rhs)
{
if(!lhs && !rhs)
{
@@ -1737,7 +2258,7 @@ Ice::proxyIdentityEqual(const ObjectPrx& lhs, const ObjectPrx& rhs)
}
bool
-Ice::proxyIdentityAndFacetLess(const ObjectPrx& lhs, const ObjectPrx& rhs)
+Ice::proxyIdentityAndFacetLess(const ObjectPrxPtr& lhs, const ObjectPrxPtr& rhs)
{
if(!lhs && !rhs)
{
@@ -1782,7 +2303,7 @@ Ice::proxyIdentityAndFacetLess(const ObjectPrx& lhs, const ObjectPrx& rhs)
}
bool
-Ice::proxyIdentityAndFacetEqual(const ObjectPrx& lhs, const ObjectPrx& rhs)
+Ice::proxyIdentityAndFacetEqual(const ObjectPrxPtr& lhs, const ObjectPrxPtr& rhs)
{
if(!lhs && !rhs)
{
@@ -1815,15 +2336,3 @@ Ice::proxyIdentityAndFacetEqual(const ObjectPrx& lhs, const ObjectPrx& rhs)
return false;
}
}
-
-void
-Ice::ice_writeObjectPrx(const OutputStreamPtr& out, const ObjectPrx& v)
-{
- out->write(v);
-}
-
-void
-Ice::ice_readObjectPrx(const InputStreamPtr& in, ObjectPrx& v)
-{
- in->read(v);
-}
diff --git a/cpp/src/Ice/ProxyFactory.cpp b/cpp/src/Ice/ProxyFactory.cpp
index c5ab91e336c..018cac70602 100644
--- a/cpp/src/Ice/ProxyFactory.cpp
+++ b/cpp/src/Ice/ProxyFactory.cpp
@@ -28,7 +28,7 @@ using namespace IceInternal;
IceUtil::Shared* IceInternal::upCast(ProxyFactory* p) { return p; }
-ObjectPrx
+ObjectPrxPtr
IceInternal::ProxyFactory::stringToProxy(const string& str) const
{
ReferencePtr ref = _instance->referenceFactory()->create(str, "");
@@ -36,7 +36,7 @@ IceInternal::ProxyFactory::stringToProxy(const string& str) const
}
string
-IceInternal::ProxyFactory::proxyToString(const ObjectPrx& proxy) const
+IceInternal::ProxyFactory::proxyToString(const ObjectPrxPtr& proxy) const
{
if(proxy)
{
@@ -48,7 +48,7 @@ IceInternal::ProxyFactory::proxyToString(const ObjectPrx& proxy) const
}
}
-ObjectPrx
+ObjectPrxPtr
IceInternal::ProxyFactory::propertyToProxy(const string& prefix) const
{
string proxy = _instance->initializationData().properties->getProperty(prefix);
@@ -57,7 +57,7 @@ IceInternal::ProxyFactory::propertyToProxy(const string& prefix) const
}
PropertyDict
-IceInternal::ProxyFactory::proxyToProperty(const ObjectPrx& proxy, const string& prefix) const
+IceInternal::ProxyFactory::proxyToProperty(const ObjectPrxPtr& proxy, const string& prefix) const
{
if(proxy)
{
@@ -69,7 +69,7 @@ IceInternal::ProxyFactory::proxyToProperty(const ObjectPrx& proxy, const string&
}
}
-ObjectPrx
+ObjectPrxPtr
IceInternal::ProxyFactory::streamToProxy(BasicStream* s) const
{
Identity ident;
@@ -80,7 +80,7 @@ IceInternal::ProxyFactory::streamToProxy(BasicStream* s) const
}
void
-IceInternal::ProxyFactory::proxyToStream(const ObjectPrx& proxy, BasicStream* s) const
+IceInternal::ProxyFactory::proxyToStream(const ObjectPrxPtr& proxy, BasicStream* s) const
{
if(proxy)
{
@@ -94,18 +94,18 @@ IceInternal::ProxyFactory::proxyToStream(const ObjectPrx& proxy, BasicStream* s)
}
}
-ObjectPrx
+ObjectPrxPtr
IceInternal::ProxyFactory::referenceToProxy(const ReferencePtr& ref) const
{
if(ref)
{
- ObjectPrx proxy = new ::IceProxy::Ice::Object;
+ ObjectPrxPtr proxy = ICE_MAKE_SHARED(::IceProxy::Ice::Object);
proxy->setup(ref);
return proxy;
}
else
{
- return 0;
+ return ICE_NULLPTR;
}
}
diff --git a/cpp/src/Ice/ProxyFactory.h b/cpp/src/Ice/ProxyFactory.h
index 72202a446db..18a4ae83552 100644
--- a/cpp/src/Ice/ProxyFactory.h
+++ b/cpp/src/Ice/ProxyFactory.h
@@ -29,16 +29,16 @@ class ProxyFactory : public IceUtil::Shared
{
public:
- Ice::ObjectPrx stringToProxy(const std::string&) const;
- std::string proxyToString(const Ice::ObjectPrx&) const;
+ Ice::ObjectPrxPtr stringToProxy(const std::string&) const;
+ std::string proxyToString(const Ice::ObjectPrxPtr&) const;
- Ice::ObjectPrx propertyToProxy(const std::string&) const;
- Ice::PropertyDict proxyToProperty(const Ice::ObjectPrx&, const std::string&) const;
+ Ice::ObjectPrxPtr propertyToProxy(const std::string&) const;
+ Ice::PropertyDict proxyToProperty(const Ice::ObjectPrxPtr&, const std::string&) const;
- Ice::ObjectPrx streamToProxy(BasicStream*) const;
- void proxyToStream(const Ice::ObjectPrx&, BasicStream*) const;
+ Ice::ObjectPrxPtr streamToProxy(BasicStream*) const;
+ void proxyToStream(const Ice::ObjectPrxPtr&, BasicStream*) const;
- Ice::ObjectPrx referenceToProxy(const ReferencePtr&) const;
+ Ice::ObjectPrxPtr referenceToProxy(const ReferencePtr&) const;
int checkRetryAfterException(const Ice::LocalException&, const ReferencePtr&, int&) const;
diff --git a/cpp/src/Ice/Reference.cpp b/cpp/src/Ice/Reference.cpp
index c461535c33e..e2b36e92ffa 100644
--- a/cpp/src/Ice/Reference.cpp
+++ b/cpp/src/Ice/Reference.cpp
@@ -27,11 +27,14 @@
#include <Ice/RequestHandlerFactory.h>
#include <Ice/ConnectionRequestHandler.h>
#include <Ice/DefaultsAndOverrides.h>
+#include <Ice/Comparable.h>
+
#include <IceUtil/StringUtil.h>
#include <IceUtil/Random.h>
#include <IceUtil/MutexPtrLock.h>
#include <functional>
+#include <algorithm>
using namespace std;
using namespace Ice;
@@ -376,7 +379,6 @@ IceInternal::Reference::operator==(const Reference& r) const
{
return false;
}
-
return true;
}
@@ -654,14 +656,14 @@ IceInternal::FixedReference::changeAdapterId(const string& /*newAdapterId*/) con
}
ReferencePtr
-IceInternal::FixedReference::changeLocator(const LocatorPrx&) const
+IceInternal::FixedReference::changeLocator(const LocatorPrxPtr&) const
{
throw FixedProxyException(__FILE__, __LINE__);
return 0; // Keep the compiler happy.
}
ReferencePtr
-IceInternal::FixedReference::changeRouter(const RouterPrx&) const
+IceInternal::FixedReference::changeRouter(const RouterPrxPtr&) const
{
throw FixedProxyException(__FILE__, __LINE__);
return 0; // Keep the compiler happy.
@@ -753,7 +755,7 @@ IceInternal::FixedReference::toProperty(const string&) const
}
RequestHandlerPtr
-IceInternal::FixedReference::getRequestHandler(const Ice::ObjectPrx& proxy) const
+IceInternal::FixedReference::getRequestHandler(const Ice::ObjectPrxPtr& proxy) const
{
switch(getMode())
{
@@ -815,7 +817,7 @@ IceInternal::FixedReference::getRequestHandler(const Ice::ObjectPrx& proxy) cons
}
ReferencePtr ref = const_cast<FixedReference*>(this);
- return proxy->__setRequestHandler(new ConnectionRequestHandler(ref, _fixedConnection, compress));
+ return proxy->__setRequestHandler(ICE_MAKE_SHARED(ConnectionRequestHandler, ref, _fixedConnection, compress));
}
BatchRequestQueuePtr
@@ -1039,7 +1041,7 @@ IceInternal::RoutableReference::changeAdapterId(const string& newAdapterId) cons
}
ReferencePtr
-IceInternal::RoutableReference::changeLocator(const LocatorPrx& newLocator) const
+IceInternal::RoutableReference::changeLocator(const LocatorPrxPtr& newLocator) const
{
LocatorInfoPtr newLocatorInfo = getInstance()->locatorManager()->get(newLocator);
if(newLocatorInfo == _locatorInfo)
@@ -1052,7 +1054,7 @@ IceInternal::RoutableReference::changeLocator(const LocatorPrx& newLocator) cons
}
ReferencePtr
-IceInternal::RoutableReference::changeRouter(const RouterPrx& newRouter) const
+IceInternal::RoutableReference::changeRouter(const RouterPrxPtr& newRouter) const
{
RouterInfoPtr newRouterInfo = getInstance()->routerManager()->get(newRouter);
if(newRouterInfo == _routerInfo)
@@ -1351,7 +1353,12 @@ IceInternal::RoutableReference::operator==(const Reference& r) const
{
return false;
}
+#ifdef ICE_CPP11_MAPPING
+ if(!equal(_endpoints.begin(), _endpoints.end(), rhs->_endpoints.begin(), rhs->_endpoints.end(),
+ Ice::TargetEquals<shared_ptr<EndpointI>>()))
+#else
if(_endpoints != rhs->_endpoints)
+#endif
{
return false;
}
@@ -1479,7 +1486,12 @@ IceInternal::RoutableReference::operator<(const Reference& r) const
{
return false;
}
+#ifdef ICE_CPP11_MAPPING
+ if(lexicographical_compare(_endpoints.begin(), _endpoints.end(), rhs->_endpoints.begin(), rhs->_endpoints.end(),
+ Ice::TargetLess<shared_ptr<EndpointI>>()))
+#else
if(_endpoints < rhs->_endpoints)
+#endif
{
return true;
}
@@ -1505,7 +1517,7 @@ IceInternal::RoutableReference::clone() const
}
RequestHandlerPtr
-IceInternal::RoutableReference::getRequestHandler(const Ice::ObjectPrx& proxy) const
+IceInternal::RoutableReference::getRequestHandler(const Ice::ObjectPrxPtr& proxy) const
{
return getInstance()->requestHandlerFactory()->getRequestHandler(const_cast<RoutableReference*>(this), proxy);
}
@@ -1640,7 +1652,7 @@ IceInternal::RoutableReference::getConnectionNoRouterInfo(const GetConnectionCal
vector<EndpointIPtr> endpts = endpoints;
_reference->applyOverrides(endpts);
- _reference->createConnection(endpts, new Callback2(_reference, _callback, cached));
+ _reference->createConnection(endpts, ICE_MAKE_SHARED(Callback2, _reference, _callback, cached));
}
virtual void
diff --git a/cpp/src/Ice/Reference.h b/cpp/src/Ice/Reference.h
index a8d1b773c46..d10e2c71c3d 100644
--- a/cpp/src/Ice/Reference.h
+++ b/cpp/src/Ice/Reference.h
@@ -36,14 +36,17 @@ class Reference : public IceUtil::Shared
{
public:
- class GetConnectionCallback : virtual public IceUtil::Shared
+ class GetConnectionCallback
+#ifndef ICE_CPP11_MAPPING
+ : virtual public IceUtil::Shared
+#endif
{
public:
virtual void setConnection(const Ice::ConnectionIPtr&, bool) = 0;
virtual void setException(const Ice::LocalException&) = 0;
};
- typedef IceUtil::Handle<GetConnectionCallback> GetConnectionCallbackPtr;
+ ICE_DEFINE_PTR(GetConnectionCallbackPtr, GetConnectionCallback);
enum Mode
{
@@ -95,8 +98,8 @@ public:
virtual ReferencePtr changeEndpoints(const std::vector<EndpointIPtr>&) const = 0;
virtual ReferencePtr changeAdapterId(const std::string&) const = 0;
- virtual ReferencePtr changeLocator(const Ice::LocatorPrx&) const = 0;
- virtual ReferencePtr changeRouter(const Ice::RouterPrx&) const = 0;
+ virtual ReferencePtr changeLocator(const Ice::LocatorPrxPtr&) const = 0;
+ virtual ReferencePtr changeRouter(const Ice::RouterPrxPtr&) const = 0;
virtual ReferencePtr changeCollocationOptimized(bool) const = 0;
virtual ReferencePtr changeLocatorCacheTimeout(int) const = 0;
virtual ReferencePtr changeCacheConnection(bool) const = 0;
@@ -132,7 +135,7 @@ public:
//
// Get a suitable connection for this reference.
//
- virtual RequestHandlerPtr getRequestHandler(const Ice::ObjectPrx&) const = 0;
+ virtual RequestHandlerPtr getRequestHandler(const Ice::ObjectPrxPtr&) const = 0;
virtual BatchRequestQueuePtr getBatchRequestQueue() const = 0;
virtual bool operator==(const Reference&) const;
@@ -190,8 +193,8 @@ public:
virtual ReferencePtr changeEndpoints(const std::vector<EndpointIPtr>&) const;
virtual ReferencePtr changeAdapterId(const std::string&) const;
- virtual ReferencePtr changeLocator(const Ice::LocatorPrx&) const;
- virtual ReferencePtr changeRouter(const Ice::RouterPrx&) const;
+ virtual ReferencePtr changeLocator(const Ice::LocatorPrxPtr&) const;
+ virtual ReferencePtr changeRouter(const Ice::RouterPrxPtr&) const;
virtual ReferencePtr changeCollocationOptimized(bool) const;
virtual ReferencePtr changeCacheConnection(bool) const;
virtual ReferencePtr changePreferSecure(bool) const;
@@ -208,7 +211,7 @@ public:
virtual std::string toString() const;
virtual Ice::PropertyDict toProperty(const std::string&) const;
- virtual RequestHandlerPtr getRequestHandler(const Ice::ObjectPrx&) const;
+ virtual RequestHandlerPtr getRequestHandler(const Ice::ObjectPrxPtr&) const;
virtual BatchRequestQueuePtr getBatchRequestQueue() const;
virtual bool operator==(const Reference&) const;
@@ -248,8 +251,8 @@ public:
virtual ReferencePtr changeCompress(bool) const;
virtual ReferencePtr changeEndpoints(const std::vector<EndpointIPtr>&) const;
virtual ReferencePtr changeAdapterId(const std::string&) const;
- virtual ReferencePtr changeLocator(const Ice::LocatorPrx&) const;
- virtual ReferencePtr changeRouter(const Ice::RouterPrx&) const;
+ virtual ReferencePtr changeLocator(const Ice::LocatorPrxPtr&) const;
+ virtual ReferencePtr changeRouter(const Ice::RouterPrxPtr&) const;
virtual ReferencePtr changeCollocationOptimized(bool) const;
virtual ReferencePtr changeCacheConnection(bool) const;
virtual ReferencePtr changePreferSecure(bool) const;
@@ -272,7 +275,7 @@ public:
virtual ReferencePtr clone() const;
- virtual RequestHandlerPtr getRequestHandler(const Ice::ObjectPrx&) const;
+ virtual RequestHandlerPtr getRequestHandler(const Ice::ObjectPrxPtr&) const;
virtual BatchRequestQueuePtr getBatchRequestQueue() const;
void getConnection(const GetConnectionCallbackPtr&) const;
diff --git a/cpp/src/Ice/ReferenceFactory.cpp b/cpp/src/Ice/ReferenceFactory.cpp
index 24c5d1d384b..fd6a833311d 100644
--- a/cpp/src/Ice/ReferenceFactory.cpp
+++ b/cpp/src/Ice/ReferenceFactory.cpp
@@ -660,7 +660,7 @@ IceInternal::ReferenceFactory::create(const Identity& ident, BasicStream* s)
}
ReferenceFactoryPtr
-IceInternal::ReferenceFactory::setDefaultRouter(const RouterPrx& defaultRouter)
+IceInternal::ReferenceFactory::setDefaultRouter(const RouterPrxPtr& defaultRouter)
{
if(defaultRouter == _defaultRouter)
{
@@ -673,14 +673,14 @@ IceInternal::ReferenceFactory::setDefaultRouter(const RouterPrx& defaultRouter)
return factory;
}
-RouterPrx
+RouterPrxPtr
IceInternal::ReferenceFactory::getDefaultRouter() const
{
return _defaultRouter;
}
ReferenceFactoryPtr
-IceInternal::ReferenceFactory::setDefaultLocator(const LocatorPrx& defaultLocator)
+IceInternal::ReferenceFactory::setDefaultLocator(const LocatorPrxPtr& defaultLocator)
{
if(defaultLocator == _defaultLocator)
{
@@ -693,7 +693,7 @@ IceInternal::ReferenceFactory::setDefaultLocator(const LocatorPrx& defaultLocato
return factory;
}
-LocatorPrx
+LocatorPrxPtr
IceInternal::ReferenceFactory::getDefaultLocator() const
{
return _defaultLocator;
@@ -815,7 +815,7 @@ IceInternal::ReferenceFactory::create(const Identity& ident,
string property;
property = propertyPrefix + ".Locator";
- LocatorPrx locator = LocatorPrx::uncheckedCast(_communicator->propertyToProxy(property));
+ LocatorPrxPtr locator = ICE_UNCHECKED_CAST(LocatorPrx, _communicator->propertyToProxy(property));
if(locator)
{
if(locator->ice_getEncodingVersion() != encoding)
@@ -829,7 +829,7 @@ IceInternal::ReferenceFactory::create(const Identity& ident,
}
property = propertyPrefix + ".Router";
- RouterPrx router = RouterPrx::uncheckedCast(_communicator->propertyToProxy(property));
+ RouterPrxPtr router = ICE_UNCHECKED_CAST(RouterPrx, _communicator->propertyToProxy(property));
if(router)
{
if(propertyPrefix.size() > 7 && propertyPrefix.substr(propertyPrefix.size() - 7, 7) == ".Router")
diff --git a/cpp/src/Ice/ReferenceFactory.h b/cpp/src/Ice/ReferenceFactory.h
index 2a38f6d72e1..12c396ee440 100644
--- a/cpp/src/Ice/ReferenceFactory.h
+++ b/cpp/src/Ice/ReferenceFactory.h
@@ -54,11 +54,11 @@ public:
//
ReferencePtr create(const ::Ice::Identity&, BasicStream*);
- ReferenceFactoryPtr setDefaultRouter(const ::Ice::RouterPrx&);
- ::Ice::RouterPrx getDefaultRouter() const;
+ ReferenceFactoryPtr setDefaultRouter(const ::Ice::RouterPrxPtr&);
+ ::Ice::RouterPrxPtr getDefaultRouter() const;
- ReferenceFactoryPtr setDefaultLocator(const ::Ice::LocatorPrx&);
- ::Ice::LocatorPrx getDefaultLocator() const;
+ ReferenceFactoryPtr setDefaultLocator(const ::Ice::LocatorPrxPtr&);
+ ::Ice::LocatorPrxPtr getDefaultLocator() const;
private:
@@ -72,8 +72,8 @@ private:
const InstancePtr _instance;
const ::Ice::CommunicatorPtr _communicator;
- ::Ice::RouterPrx _defaultRouter;
- ::Ice::LocatorPrx _defaultLocator;
+ ::Ice::RouterPrxPtr _defaultRouter;
+ ::Ice::LocatorPrxPtr _defaultLocator;
};
}
diff --git a/cpp/src/Ice/RequestHandler.cpp b/cpp/src/Ice/RequestHandler.cpp
index 4cef97a0909..62acf7e4ef3 100644
--- a/cpp/src/Ice/RequestHandler.cpp
+++ b/cpp/src/Ice/RequestHandler.cpp
@@ -13,8 +13,10 @@
using namespace std;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(RequestHandler* p) { return p; }
IceUtil::Shared* IceInternal::upCast(CancellationHandler* p) { return p; }
+#endif
RetryException::RetryException(const Ice::LocalException& ex)
{
diff --git a/cpp/src/Ice/RequestHandler.h b/cpp/src/Ice/RequestHandler.h
index 03a55f7773d..cfe7db10845 100644
--- a/cpp/src/Ice/RequestHandler.h
+++ b/cpp/src/Ice/RequestHandler.h
@@ -52,7 +52,10 @@ private:
IceUtil::UniquePtr<Ice::LocalException> _ex;
};
-class CancellationHandler : virtual public IceUtil::Shared
+class CancellationHandler
+#ifndef ICE_CPP11_MAPPING
+ : virtual public IceUtil::Shared
+#endif
{
public:
@@ -63,6 +66,8 @@ public:
class RequestHandler : public CancellationHandler
{
public:
+
+ RequestHandler(const ReferencePtr&);
virtual RequestHandlerPtr update(const RequestHandlerPtr&, const RequestHandlerPtr&) = 0;
@@ -76,7 +81,6 @@ public:
protected:
- RequestHandler(const ReferencePtr&);
const ReferencePtr _reference;
const bool _response;
};
diff --git a/cpp/src/Ice/RequestHandlerFactory.cpp b/cpp/src/Ice/RequestHandlerFactory.cpp
index 0b2d0ff10ed..029a4001e50 100644
--- a/cpp/src/Ice/RequestHandlerFactory.cpp
+++ b/cpp/src/Ice/RequestHandlerFactory.cpp
@@ -23,14 +23,14 @@ RequestHandlerFactory::RequestHandlerFactory(const InstancePtr& instance) : _ins
}
RequestHandlerPtr
-IceInternal::RequestHandlerFactory::getRequestHandler(const RoutableReferencePtr& ref, const Ice::ObjectPrx& proxy)
+IceInternal::RequestHandlerFactory::getRequestHandler(const RoutableReferencePtr& ref, const Ice::ObjectPrxPtr& proxy)
{
if(ref->getCollocationOptimized())
{
Ice::ObjectAdapterPtr adapter = _instance->objectAdapterFactory()->findObjectAdapter(proxy);
if(adapter)
{
- return proxy->__setRequestHandler(new CollocatedRequestHandler(ref, adapter));
+ return proxy->__setRequestHandler(ICE_MAKE_SHARED(CollocatedRequestHandler, ref, adapter));
}
}
@@ -42,7 +42,7 @@ IceInternal::RequestHandlerFactory::getRequestHandler(const RoutableReferencePtr
map<ReferencePtr, ConnectRequestHandlerPtr>::iterator p = _handlers.find(ref);
if(p == _handlers.end())
{
- handler = new ConnectRequestHandler(ref, proxy);
+ handler = ICE_MAKE_SHARED(ConnectRequestHandler, ref, proxy);
_handlers.insert(make_pair(ref, handler));
connect = true;
}
@@ -53,12 +53,16 @@ IceInternal::RequestHandlerFactory::getRequestHandler(const RoutableReferencePtr
}
else
{
- handler = new ConnectRequestHandler(ref, proxy);
+ handler = ICE_MAKE_SHARED(ConnectRequestHandler, ref, proxy);
connect = true;
}
if(connect)
{
+#ifdef ICE_CPP11_MAPPING
+ ref->getConnection(handler);
+#else
ref->getConnection(handler.get());
+#endif
}
return proxy->__setRequestHandler(handler->connect(proxy));
}
diff --git a/cpp/src/Ice/RequestHandlerFactory.h b/cpp/src/Ice/RequestHandlerFactory.h
index 6a9aec0114d..3a009e2a3c3 100644
--- a/cpp/src/Ice/RequestHandlerFactory.h
+++ b/cpp/src/Ice/RequestHandlerFactory.h
@@ -28,7 +28,7 @@ public:
RequestHandlerFactory(const InstancePtr&);
- RequestHandlerPtr getRequestHandler(const RoutableReferencePtr&, const Ice::ObjectPrx&);
+ RequestHandlerPtr getRequestHandler(const RoutableReferencePtr&, const Ice::ObjectPrxPtr&);
void removeRequestHandler(const ReferencePtr&, const RequestHandlerPtr&);
private:
diff --git a/cpp/src/Ice/ResponseHandler.cpp b/cpp/src/Ice/ResponseHandler.cpp
index 26ed3f231f8..7693477aef9 100644
--- a/cpp/src/Ice/ResponseHandler.cpp
+++ b/cpp/src/Ice/ResponseHandler.cpp
@@ -12,9 +12,6 @@
using namespace std;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(ResponseHandler* obj) { return obj; }
-
-ResponseHandler::~ResponseHandler()
-{
-}
-
+#endif \ No newline at end of file
diff --git a/cpp/src/Ice/ResponseHandler.h b/cpp/src/Ice/ResponseHandler.h
index 23ed39fd70d..0838953bc41 100644
--- a/cpp/src/Ice/ResponseHandler.h
+++ b/cpp/src/Ice/ResponseHandler.h
@@ -16,18 +16,22 @@
#include <Ice/Config.h>
#include <Ice/LocalException.h>
#include <Ice/ResponseHandlerF.h>
+#include <Ice/VirtualShared.h>
namespace IceInternal
{
class BasicStream;
-class ResponseHandler : virtual public ::IceUtil::Shared
+class ResponseHandler :
+#ifdef ICE_CPP11_MAPPING
+ public virtual VirtualShared
+#else
+ public virtual ::IceUtil::Shared
+#endif
{
public:
- virtual ~ResponseHandler();
-
virtual void sendResponse(Ice::Int, BasicStream*, Ice::Byte, bool) = 0;
virtual void sendNoResponse() = 0;
virtual bool systemException(Ice::Int, const Ice::SystemException&, bool) = 0;
diff --git a/cpp/src/Ice/RetryQueue.cpp b/cpp/src/Ice/RetryQueue.cpp
index 6cf87596708..84a8997bd4a 100644
--- a/cpp/src/Ice/RetryQueue.cpp
+++ b/cpp/src/Ice/RetryQueue.cpp
@@ -40,7 +40,7 @@ IceInternal::RetryTask::runTimerTask()
// (we still need the client thread pool at this point to call
// exception callbacks with CommunicatorDestroyedException).
//
- _queue->remove(this);
+ _queue->remove(ICE_SHARED_FROM_THIS);
}
void
@@ -52,7 +52,7 @@ IceInternal::RetryTask::requestCanceled(OutgoingBase*, const Ice::LocalException
void
IceInternal::RetryTask::asyncRequestCanceled(const OutgoingAsyncBasePtr& outAsync, const Ice::LocalException& ex)
{
- if(_queue->cancel(this))
+ if(_queue->cancel(ICE_SHARED_FROM_THIS))
{
if(_instance->traceLevels()->retry >= 1)
{
@@ -97,7 +97,7 @@ IceInternal::RetryQueue::add(const ProxyOutgoingAsyncBasePtr& out, int interval)
{
throw CommunicatorDestroyedException(__FILE__, __LINE__);
}
- RetryTaskPtr task = new RetryTask(_instance, this, out);
+ RetryTaskPtr task = ICE_MAKE_SHARED(RetryTask, _instance, this, out);
out->cancelable(task); // This will throw if the request is canceled.
try
{
diff --git a/cpp/src/Ice/RetryQueue.h b/cpp/src/Ice/RetryQueue.h
index e7d4c62728c..07e5e5ac39e 100644
--- a/cpp/src/Ice/RetryQueue.h
+++ b/cpp/src/Ice/RetryQueue.h
@@ -21,7 +21,9 @@
namespace IceInternal
{
-class RetryTask : public IceUtil::TimerTask, public CancellationHandler
+class RetryTask : public IceUtil::TimerTask,
+ public CancellationHandler,
+ public ICE_ENABLE_SHARED_FROM_THIS(RetryTask)
{
public:
@@ -43,7 +45,7 @@ private:
const RetryQueuePtr _queue;
const ProxyOutgoingAsyncBasePtr _outAsync;
};
-typedef IceUtil::Handle<RetryTask> RetryTaskPtr;
+ICE_DEFINE_PTR(RetryTaskPtr, RetryTask);
class RetryQueue : public IceUtil::Shared, public IceUtil::Monitor<IceUtil::Mutex>
{
diff --git a/cpp/src/Ice/RouterInfo.cpp b/cpp/src/Ice/RouterInfo.cpp
index 49f3ac389ed..f0afc392990 100644
--- a/cpp/src/Ice/RouterInfo.cpp
+++ b/cpp/src/Ice/RouterInfo.cpp
@@ -30,27 +30,29 @@ void
IceInternal::RouterManager::destroy()
{
IceUtil::Mutex::Lock sync(*this);
-
- for_each(_table.begin(), _table.end(), Ice::secondVoidMemFun<const RouterPrx, RouterInfo>(&RouterInfo::destroy));
-
+#ifdef ICE_CPP11_MAPPING
+ for_each(_table.begin(), _table.end(), [](auto it){ it.second->destroy(); });
+#else
+ for_each(_table.begin(), _table.end(), Ice::secondVoidMemFun<const RouterPrxPtr, RouterInfo>(&RouterInfo::destroy));
+#endif
_table.clear();
_tableHint = _table.end();
}
RouterInfoPtr
-IceInternal::RouterManager::get(const RouterPrx& rtr)
+IceInternal::RouterManager::get(const RouterPrxPtr& rtr)
{
if(!rtr)
{
return 0;
}
- RouterPrx router = RouterPrx::uncheckedCast(rtr->ice_router(0)); // The router cannot be routed.
+ RouterPrxPtr router = ICE_UNCHECKED_CAST(RouterPrx, rtr->ice_router(0)); // The router cannot be routed.
IceUtil::Mutex::Lock sync(*this);
- map<RouterPrx, RouterInfoPtr>::iterator p = _table.end();
-
+ map<RouterPrxPtr, RouterInfoPtr>::iterator p = _table.end();
+
if(_tableHint != _table.end())
{
if(_tableHint->first == router)
@@ -58,7 +60,7 @@ IceInternal::RouterManager::get(const RouterPrx& rtr)
p = _tableHint;
}
}
-
+
if(p == _table.end())
{
p = _table.find(router);
@@ -66,7 +68,7 @@ IceInternal::RouterManager::get(const RouterPrx& rtr)
if(p == _table.end())
{
- _tableHint = _table.insert(_tableHint, pair<const RouterPrx, RouterInfoPtr>(router, new RouterInfo(router)));
+ _tableHint = _table.insert(_tableHint, pair<const RouterPrxPtr, RouterInfoPtr>(router, new RouterInfo(router)));
}
else
{
@@ -77,26 +79,26 @@ IceInternal::RouterManager::get(const RouterPrx& rtr)
}
RouterInfoPtr
-IceInternal::RouterManager::erase(const RouterPrx& rtr)
+IceInternal::RouterManager::erase(const RouterPrxPtr& rtr)
{
RouterInfoPtr info;
if(rtr)
{
- RouterPrx router = RouterPrx::uncheckedCast(rtr->ice_router(0)); // The router cannot be routed.
+ RouterPrxPtr router = ICE_UNCHECKED_CAST(RouterPrx, rtr->ice_router(ICE_NULLPTR)); // The router cannot be routed.
IceUtil::Mutex::Lock sync(*this);
- map<RouterPrx, RouterInfoPtr>::iterator p = _table.end();
+ map<RouterPrxPtr, RouterInfoPtr>::iterator p = _table.end();
if(_tableHint != _table.end() && _tableHint->first == router)
{
p = _tableHint;
_tableHint = _table.end();
}
-
+
if(p == _table.end())
{
p = _table.find(router);
}
-
+
if(p != _table.end())
{
info = p->second;
@@ -107,7 +109,7 @@ IceInternal::RouterManager::erase(const RouterPrx& rtr)
return info;
}
-IceInternal::RouterInfo::RouterInfo(const RouterPrx& router) :
+IceInternal::RouterInfo::RouterInfo(const RouterPrxPtr& router) :
_router(router)
{
assert(_router);
@@ -127,19 +129,31 @@ IceInternal::RouterInfo::destroy()
bool
IceInternal::RouterInfo::operator==(const RouterInfo& rhs) const
{
+#ifdef ICE_CPP11_MAPPING
+ return Ice::targetEquals(_router, rhs._router);
+#else
return _router == rhs._router;
+#endif
}
bool
IceInternal::RouterInfo::operator!=(const RouterInfo& rhs) const
{
+#ifdef ICE_CPP11_MAPPING
+ return !Ice::targetEquals(_router, rhs._router);
+#else
return _router != rhs._router;
+#endif
}
bool
IceInternal::RouterInfo::operator<(const RouterInfo& rhs) const
{
+#ifdef ICE_CPP11_MAPPING
+ return Ice::targetLess(_router, rhs._router);
+#else
return _router < rhs._router;
+#endif
}
vector<EndpointIPtr>
@@ -157,14 +171,14 @@ IceInternal::RouterInfo::getClientEndpoints()
}
void
-IceInternal::RouterInfo::getClientProxyResponse(const Ice::ObjectPrx& proxy,
+IceInternal::RouterInfo::getClientProxyResponse(const Ice::ObjectPrxPtr& proxy,
const GetClientEndpointsCallbackPtr& callback)
{
callback->setEndpoints(setClientEndpoints(proxy));
}
void
-IceInternal::RouterInfo::getClientProxyException(const Ice::Exception& ex,
+IceInternal::RouterInfo::getClientProxyException(const Ice::Exception& ex,
const GetClientEndpointsCallbackPtr& callback)
{
callback->setException(dynamic_cast<const Ice::LocalException&>(ex));
@@ -185,10 +199,29 @@ IceInternal::RouterInfo::getClientEndpoints(const GetClientEndpointsCallbackPtr&
return;
}
- _router->begin_getClientProxy(newCallback_Router_getClientProxy(this,
- &RouterInfo::getClientProxyResponse,
+#ifdef ICE_CPP11_MAPPING
+ _router->getClientProxy_async(
+ [this, callback](const Ice::ObjectPrxPtr& proxy)
+ {
+ this->getClientProxyResponse(proxy, callback);
+ },
+ [this, callback](exception_ptr e)
+ {
+ try
+ {
+ rethrow_exception(e);
+ }
+ catch(const Ice::Exception& ex)
+ {
+ this->getClientProxyException(ex, callback);
+ }
+ });
+#else
+ _router->begin_getClientProxy(newCallback_Router_getClientProxy(this,
+ &RouterInfo::getClientProxyResponse,
&RouterInfo::getClientProxyException),
callback);
+#endif
}
vector<EndpointIPtr>
@@ -206,7 +239,7 @@ IceInternal::RouterInfo::getServerEndpoints()
}
void
-IceInternal::RouterInfo::addProxy(const ObjectPrx& proxy)
+IceInternal::RouterInfo::addProxy(const ObjectPrxPtr& proxy)
{
assert(proxy); // Must not be called for null proxies.
@@ -240,7 +273,7 @@ IceInternal::RouterInfo::addProxyException(const Ice::Exception& ex, const AddPr
}
bool
-IceInternal::RouterInfo::addProxy(const Ice::ObjectPrx& proxy, const AddProxyCallbackPtr& callback)
+IceInternal::RouterInfo::addProxy(const Ice::ObjectPrxPtr& proxy, const AddProxyCallbackPtr& callback)
{
assert(proxy);
{
@@ -258,11 +291,31 @@ IceInternal::RouterInfo::addProxy(const Ice::ObjectPrx& proxy, const AddProxyCal
Ice::ObjectProxySeq proxies;
proxies.push_back(proxy);
AddProxyCookiePtr cookie = new AddProxyCookie(callback, proxy);
+
+#ifdef ICE_CPP11_MAPPING
+ _router->addProxies_async(proxies,
+ [this, cookie](const Ice::ObjectProxySeq& proxies)
+ {
+ this->addProxyResponse(proxies, cookie);
+ },
+ [this, cookie](exception_ptr e)
+ {
+ try
+ {
+ rethrow_exception(e);
+ }
+ catch(const Ice::Exception& ex)
+ {
+ this->addProxyException(ex, cookie);
+ }
+ });
+#else
_router->begin_addProxies(proxies,
- newCallback_Router_addProxies(this,
- &RouterInfo::addProxyResponse,
- &RouterInfo::addProxyException),
+ newCallback_Router_addProxies(this,
+ &RouterInfo::addProxyResponse,
+ &RouterInfo::addProxyException),
cookie);
+#endif
return false;
}
@@ -288,7 +341,7 @@ IceInternal::RouterInfo::clearCache(const ReferencePtr& ref)
}
vector<EndpointIPtr>
-IceInternal::RouterInfo::setClientEndpoints(const Ice::ObjectPrx& proxy)
+IceInternal::RouterInfo::setClientEndpoints(const Ice::ObjectPrxPtr& proxy)
{
IceUtil::Mutex::Lock sync(*this);
if(_clientEndpoints.empty())
@@ -302,7 +355,7 @@ IceInternal::RouterInfo::setClientEndpoints(const Ice::ObjectPrx& proxy)
}
else
{
- Ice::ObjectPrx clientProxy = proxy->ice_router(0); // The client proxy cannot be routed.
+ Ice::ObjectPrxPtr clientProxy = proxy->ice_router(0); // The client proxy cannot be routed.
//
// In order to avoid creating a new connection to the router,
@@ -322,12 +375,12 @@ IceInternal::RouterInfo::setClientEndpoints(const Ice::ObjectPrx& proxy)
vector<EndpointIPtr>
-IceInternal::RouterInfo::setServerEndpoints(const Ice::ObjectPrx& /*serverProxy*/)
+IceInternal::RouterInfo::setServerEndpoints(const Ice::ObjectPrxPtr& /*serverProxy*/)
{
IceUtil::Mutex::Lock sync(*this);
if(_serverEndpoints.empty()) // Lazy initialization.
{
- ObjectPrx serverProxy = _router->getServerProxy();
+ ObjectPrxPtr serverProxy = _router->getServerProxy();
if(!serverProxy)
{
throw NoEndpointException(__FILE__, __LINE__);
@@ -341,12 +394,12 @@ IceInternal::RouterInfo::setServerEndpoints(const Ice::ObjectPrx& /*serverProxy*
}
void
-IceInternal::RouterInfo::addAndEvictProxies(const Ice::ObjectPrx& proxy, const Ice::ObjectProxySeq& evictedProxies)
+IceInternal::RouterInfo::addAndEvictProxies(const Ice::ObjectPrxPtr& proxy, const Ice::ObjectProxySeq& evictedProxies)
{
IceUtil::Mutex::Lock sync(*this);
//
- // Check if the proxy hasn't already been evicted by a concurrent addProxies call.
+ // Check if the proxy hasn't already been evicted by a concurrent addProxies call.
// If it's the case, don't add it to our local map.
//
multiset<Identity>::iterator p = _evictedIdentities.find(proxy->ice_getIdentity());
@@ -362,7 +415,7 @@ IceInternal::RouterInfo::addAndEvictProxies(const Ice::ObjectPrx& proxy, const I
//
_identities.insert(proxy->ice_getIdentity());
}
-
+
//
// We also must remove whatever proxies the router evicted.
//
diff --git a/cpp/src/Ice/RouterInfo.h b/cpp/src/Ice/RouterInfo.h
index 848cd7e0e04..9f6a1dbfef2 100644
--- a/cpp/src/Ice/RouterInfo.h
+++ b/cpp/src/Ice/RouterInfo.h
@@ -13,12 +13,13 @@
#include <IceUtil/Shared.h>
#include <IceUtil/Mutex.h>
#include <Ice/RouterInfoF.h>
-#include <Ice/RouterF.h>
+#include <Ice/Router.h>
#include <Ice/ProxyF.h>
#include <Ice/ReferenceF.h>
#include <Ice/EndpointIF.h>
#include <Ice/BuiltinSequences.h>
#include <Ice/Identity.h>
+#include <Ice/Comparable.h>
#include <set>
@@ -37,13 +38,21 @@ public:
// Returns router info for a given router. Automatically creates
// the router info if it doesn't exist yet.
//
- RouterInfoPtr get(const Ice::RouterPrx&);
- RouterInfoPtr erase(const Ice::RouterPrx&);
+ RouterInfoPtr get(const Ice::RouterPrxPtr&);
+ RouterInfoPtr erase(const Ice::RouterPrxPtr&);
private:
- std::map<Ice::RouterPrx, RouterInfoPtr> _table;
- std::map<Ice::RouterPrx, RouterInfoPtr>::iterator _tableHint;
+#ifdef ICE_CPP11_MAPPING
+ using RouterTableMap = std::map<std::shared_ptr<Ice::RouterPrx>,
+ RouterInfoPtr,
+ Ice::TargetLess<std::shared_ptr<::Ice::RouterPrx>>>;
+#else
+ typedef std::map<Ice::RouterPrxPtr, RouterInfoPtr> RouterTableMap;
+#endif
+
+ RouterTableMap _table;
+ RouterTableMap::iterator _tableHint;
};
class RouterInfo : public IceUtil::Shared, public IceUtil::Mutex
@@ -59,16 +68,19 @@ public:
};
typedef IceUtil::Handle<GetClientEndpointsCallback> GetClientEndpointsCallbackPtr;
- class AddProxyCallback : virtual public IceUtil::Shared
+ class AddProxyCallback
+#ifndef ICE_CPP11_MAPPING
+ : virtual public IceUtil::Shared
+#endif
{
public:
virtual void addedProxy() = 0;
virtual void setException(const Ice::LocalException&) = 0;
};
- typedef IceUtil::Handle<AddProxyCallback> AddProxyCallbackPtr;
+ ICE_DEFINE_PTR(AddProxyCallbackPtr, AddProxyCallback);
- RouterInfo(const Ice::RouterPrx&);
+ RouterInfo(const Ice::RouterPrxPtr&);
void destroy();
@@ -76,14 +88,14 @@ public:
bool operator!=(const RouterInfo&) const;
bool operator<(const RouterInfo&) const;
- const Ice::RouterPrx& getRouter() const
+ const Ice::RouterPrxPtr& getRouter() const
{
//
// No mutex lock necessary, _router is immutable.
//
return _router;
}
- void getClientProxyResponse(const Ice::ObjectPrx&, const GetClientEndpointsCallbackPtr&);
+ void getClientProxyResponse(const Ice::ObjectPrxPtr&, const GetClientEndpointsCallbackPtr&);
void getClientProxyException(const Ice::Exception&, const GetClientEndpointsCallbackPtr&);
std::vector<EndpointIPtr> getClientEndpoints();
void getClientEndpoints(const GetClientEndpointsCallbackPtr&);
@@ -93,7 +105,7 @@ public:
{
public:
- AddProxyCookie(const AddProxyCallbackPtr cb, const Ice::ObjectPrx& proxy) :
+ AddProxyCookie(const AddProxyCallbackPtr cb, const Ice::ObjectPrxPtr& proxy) :
_cb(cb),
_proxy(proxy)
{
@@ -104,7 +116,7 @@ public:
return _cb;
}
- Ice::ObjectPrx proxy() const
+ Ice::ObjectPrxPtr proxy() const
{
return _proxy;
}
@@ -112,14 +124,14 @@ public:
private:
const AddProxyCallbackPtr _cb;
- const Ice::ObjectPrx _proxy;
+ const Ice::ObjectPrxPtr _proxy;
};
typedef IceUtil::Handle<AddProxyCookie> AddProxyCookiePtr;
void addProxyResponse(const Ice::ObjectProxySeq&, const AddProxyCookiePtr&);
void addProxyException(const Ice::Exception&, const AddProxyCookiePtr&);
- void addProxy(const Ice::ObjectPrx&);
- bool addProxy(const Ice::ObjectPrx&, const AddProxyCallbackPtr&);
+ void addProxy(const Ice::ObjectPrxPtr&);
+ bool addProxy(const Ice::ObjectPrxPtr&, const AddProxyCallbackPtr&);
void setAdapter(const Ice::ObjectAdapterPtr&);
Ice::ObjectAdapterPtr getAdapter() const;
@@ -129,13 +141,13 @@ public:
//
// The following methods need to be public for access by AMI callbacks.
//
- std::vector<EndpointIPtr> setClientEndpoints(const Ice::ObjectPrx&);
- std::vector<EndpointIPtr> setServerEndpoints(const Ice::ObjectPrx&);
- void addAndEvictProxies(const Ice::ObjectPrx&, const Ice::ObjectProxySeq&);
+ std::vector<EndpointIPtr> setClientEndpoints(const Ice::ObjectPrxPtr&);
+ std::vector<EndpointIPtr> setServerEndpoints(const Ice::ObjectPrxPtr&);
+ void addAndEvictProxies(const Ice::ObjectPrxPtr&, const Ice::ObjectProxySeq&);
private:
- const Ice::RouterPrx _router;
+ const Ice::RouterPrxPtr _router;
std::vector<EndpointIPtr> _clientEndpoints;
std::vector<EndpointIPtr> _serverEndpoints;
Ice::ObjectAdapterPtr _adapter;
diff --git a/cpp/src/Ice/Selector.cpp b/cpp/src/Ice/Selector.cpp
index 1035955b050..094b6f9734e 100644
--- a/cpp/src/Ice/Selector.cpp
+++ b/cpp/src/Ice/Selector.cpp
@@ -77,11 +77,13 @@ Selector::initialize(EventHandler* handler)
ex.error = GetLastError();
throw ex;
}
- handler->__incRef();
handler->getNativeInfo()->initialize(_handle, reinterpret_cast<ULONG_PTR>(handler));
#else
+# ifdef ICE_CPP11_MAPPING
+ EventHandlerPtr h = dynamic_pointer_cast<EventHandler>(handler->shared_from_this());
+# else
EventHandlerPtr h = handler;
- handler->__incRef();
+# endif
handler->getNativeInfo()->setCompletedHandler(
ref new SocketOperationCompletedHandler(
[=](int operation)
@@ -117,7 +119,6 @@ Selector::finish(IceInternal::EventHandler* handler)
{
handler->_registered = SocketOperationNone;
handler->_finish = false; // Ensures that finished() is only called once on the event handler.
- handler->__decRef();
}
void
@@ -721,7 +722,12 @@ Selector::finishSelect(vector<pair<EventHandler*, SocketOperation> >& handlers)
continue; // Interrupted
}
+#ifdef ICE_CPP11_MAPPING
+ map<EventHandlerPtr, SocketOperation>::iterator q = _readyHandlers.find(
+ dynamic_pointer_cast<EventHandler>(p.first->shared_from_this()));
+#else
map<EventHandlerPtr, SocketOperation>::iterator q = _readyHandlers.find(p.first);
+#endif
if(q != _readyHandlers.end()) // Handler will be added by the loop below
{
q->second = p.second; // We just remember which operations are ready here.
@@ -831,12 +837,22 @@ Selector::checkReady(EventHandler* handler)
{
if(handler->_ready & ~handler->_disabled & handler->_registered)
{
+#ifdef ICE_CPP11_MAPPING
+ _readyHandlers.insert(make_pair(dynamic_pointer_cast<EventHandler>(handler->shared_from_this()),
+ SocketOperationNone));
+#else
_readyHandlers.insert(make_pair(handler, SocketOperationNone));
+#endif
wakeup();
}
else
{
+#ifdef ICE_CPP11_MAPPING
+ map<EventHandlerPtr, SocketOperation>::iterator p =
+ _readyHandlers.find(dynamic_pointer_cast<EventHandler>(handler->shared_from_this()));
+#else
map<EventHandlerPtr, SocketOperation>::iterator p = _readyHandlers.find(handler);
+#endif
if(p != _readyHandlers.end())
{
_readyHandlers.erase(p);
diff --git a/cpp/src/Ice/Service.cpp b/cpp/src/Ice/Service.cpp
index f2be014be70..3ed40a27d6c 100644
--- a/cpp/src/Ice/Service.cpp
+++ b/cpp/src/Ice/Service.cpp
@@ -196,7 +196,7 @@ public:
virtual Ice::LoggerPtr
cloneWithPrefix(const string& prefix)
{
- return new SMEventLoggerIWrapper(_logger, prefix);
+ return ICE_MAKE_SHARED(SMEventLoggerIWrapper, _logger, prefix);
}
private:
@@ -585,10 +585,10 @@ Ice::Service::main(int& argc, char* argv[], const InitializationData& initializa
// our own logger.
//
_logger = getProcessLogger();
- if(LoggerIPtr::dynamicCast(_logger))
+ if(ICE_DYNAMIC_CAST(LoggerI, _logger))
{
string eventLogSource = initData.properties->getPropertyWithDefault("Ice.EventLog.Source", name);
- _logger = new SMEventLoggerIWrapper(new SMEventLoggerI(eventLogSource, stringConverter), "");
+ _logger = ICE_MAKE_SHARED(SMEventLoggerIWrapper, new SMEventLoggerI(eventLogSource, stringConverter), "");
setProcessLogger(_logger);
}
@@ -712,14 +712,14 @@ Ice::Service::main(int& argc, char* argv[], const InitializationData& initializa
if(!_logger)
{
_logger = getProcessLogger();
- if(LoggerIPtr::dynamicCast(_logger))
+ if(ICE_DYNAMIC_CAST(LoggerI, _logger))
{
const bool convert =
initData.properties->getPropertyAsIntWithDefault("Ice.LogStdErr.Convert", 1) > 0 &&
initData.properties->getProperty("Ice.StdErr").empty();
- _logger = new LoggerI(initData.properties->getProperty("Ice.ProgramName"), "", convert,
- IceUtil::getProcessStringConverter());
+ _logger = ICE_MAKE_SHARED(LoggerI, initData.properties->getProperty("Ice.ProgramName"), "", convert,
+ IceUtil::getProcessStringConverter());
setProcessLogger(_logger);
}
}
diff --git a/cpp/src/Ice/SlicedData.cpp b/cpp/src/Ice/SlicedData.cpp
index b47da253e7f..d721b1c6c91 100644
--- a/cpp/src/Ice/SlicedData.cpp
+++ b/cpp/src/Ice/SlicedData.cpp
@@ -13,15 +13,19 @@
using namespace std;
using namespace Ice;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* Ice::upCast(SliceInfo* p) { return p; }
IceUtil::Shared* Ice::upCast(SlicedData* p) { return p; }
IceUtil::Shared* Ice::upCast(UnknownSlicedObject* p) { return p; }
+#endif
Ice::SlicedData::SlicedData(const SliceInfoSeq& seq) :
slices(seq)
{
}
+
+#ifndef ICE_CPP11_MAPPING
void
Ice::SlicedData::__gcVisitMembers(IceInternal::GCVisitor& visitor)
{
@@ -39,6 +43,7 @@ Ice::SlicedData::__gcVisitMembers(IceInternal::GCVisitor& visitor)
}
}
}
+#endif
Ice::UnknownSlicedObject::UnknownSlicedObject(const string& unknownTypeId) : _unknownTypeId(unknownTypeId)
{
@@ -56,6 +61,7 @@ Ice::UnknownSlicedObject::getSlicedData() const
return _slicedData;
}
+#ifndef ICE_CPP11_MAPPING
void
Ice::UnknownSlicedObject::__gcVisitMembers(IceInternal::GCVisitor& _v)
{
@@ -64,6 +70,7 @@ Ice::UnknownSlicedObject::__gcVisitMembers(IceInternal::GCVisitor& _v)
_slicedData->__gcVisitMembers(_v);
}
}
+#endif
void
Ice::UnknownSlicedObject::__write(IceInternal::BasicStream* __os) const
diff --git a/cpp/src/Ice/StreamI.cpp b/cpp/src/Ice/StreamI.cpp
index 050c32c07ce..a44f891972b 100644
--- a/cpp/src/Ice/StreamI.cpp
+++ b/cpp/src/Ice/StreamI.cpp
@@ -121,10 +121,10 @@ InputStreamI::readAndCheckSeqSize(int minSize)
return _is->readAndCheckSeqSize(minSize);
}
-ObjectPrx
+ObjectPrxPtr
InputStreamI::readProxy()
{
- ObjectPrx v;
+ ObjectPrxPtr v;
_is->read(v);
return v;
}
@@ -133,7 +133,7 @@ namespace
{
void
-patchObject(void* addr, const ObjectPtr& v)
+patchObject(void* addr, const ValuePtr& v)
{
ReadObjectCallback* cb = static_cast<ReadObjectCallback*>(addr);
assert(cb);
@@ -454,7 +454,7 @@ OutputStreamI::communicator() const
}
void
-OutputStreamI::writeObject(const ObjectPtr& v)
+OutputStreamI::writeObject(const ValuePtr& v)
{
_os->write(v);
}
@@ -466,7 +466,7 @@ OutputStreamI::writeException(const UserException& v)
}
void
-OutputStreamI::writeProxy(const ObjectPrx& v)
+OutputStreamI::writeProxy(const ObjectPrxPtr& v)
{
_os->write(v);
}
diff --git a/cpp/src/Ice/StreamI.h b/cpp/src/Ice/StreamI.h
index 11b659a59c7..d2b8fad2c89 100644
--- a/cpp/src/Ice/StreamI.h
+++ b/cpp/src/Ice/StreamI.h
@@ -41,7 +41,7 @@ public:
virtual Int readSize();
virtual Int readAndCheckSeqSize(int);
- virtual ObjectPrx readProxy();
+ virtual ObjectPrxPtr readProxy();
virtual void readObject(const ReadObjectCallbackPtr&);
virtual void throwException();
@@ -125,9 +125,9 @@ public:
virtual CommunicatorPtr communicator() const;
- virtual void writeObject(const ObjectPtr&);
+ virtual void writeObject(const ValuePtr&);
virtual void writeException(const UserException&);
- virtual void writeProxy(const ObjectPrx&);
+ virtual void writeProxy(const ObjectPrxPtr&);
virtual void writeSize(Int);
diff --git a/cpp/src/Ice/SysLoggerI.cpp b/cpp/src/Ice/SysLoggerI.cpp
index 0768efc5b77..99e88c7810f 100644
--- a/cpp/src/Ice/SysLoggerI.cpp
+++ b/cpp/src/Ice/SysLoggerI.cpp
@@ -163,5 +163,5 @@ Ice::SysLoggerI::getPrefix()
Ice::LoggerPtr
Ice::SysLoggerI::cloneWithPrefix(const string& prefix)
{
- return new SysLoggerI(prefix, _facility);
+ return ICE_MAKE_SHARED(SysLoggerI, prefix, _facility);
}
diff --git a/cpp/src/Ice/SysLoggerI.h b/cpp/src/Ice/SysLoggerI.h
index c83eab0a435..c7ceb99d9a4 100644
--- a/cpp/src/Ice/SysLoggerI.h
+++ b/cpp/src/Ice/SysLoggerI.h
@@ -21,6 +21,7 @@ class SysLoggerI : public Logger, public ::IceUtil::Mutex
public:
SysLoggerI(const std::string&, const std::string&);
+ SysLoggerI(const std::string&, int);
~SysLoggerI();
virtual void print(const std::string&);
@@ -32,8 +33,6 @@ public:
private:
- SysLoggerI(const std::string&, int);
-
int _facility;
const std::string _prefix;
};
diff --git a/cpp/src/Ice/TcpEndpointI.cpp b/cpp/src/Ice/TcpEndpointI.cpp
index 5e744c394bb..b30edcb0be7 100644
--- a/cpp/src/Ice/TcpEndpointI.cpp
+++ b/cpp/src/Ice/TcpEndpointI.cpp
@@ -21,7 +21,9 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(TcpEndpointI* p) { return p; }
+#endif
extern "C"
{
@@ -62,7 +64,12 @@ IceInternal::TcpEndpointI::TcpEndpointI(const ProtocolInstancePtr& instance, Bas
EndpointInfoPtr
IceInternal::TcpEndpointI::getInfo() const
{
+#ifdef ICE_CPP11_MAPPING
+ TCPEndpointInfoPtr info = make_shared<InfoI<Ice::TCPEndpointInfo>>(
+ dynamic_pointer_cast<TcpEndpointI>(const_pointer_cast<EndpointI>(shared_from_this())));
+#else
TCPEndpointInfoPtr info = new InfoI<Ice::TCPEndpointInfo>(const_cast<TcpEndpointI*>(this));
+#endif
fillEndpointInfo(info.get());
return info;
}
@@ -70,7 +77,12 @@ IceInternal::TcpEndpointI::getInfo() const
EndpointInfoPtr
IceInternal::TcpEndpointI::getWSInfo(const string& resource) const
{
+#ifdef ICE_CPP11_MAPPING
+ WSEndpointInfoPtr info = make_shared<InfoI<Ice::WSEndpointInfo>>(
+ dynamic_pointer_cast<TcpEndpointI>(const_pointer_cast<EndpointI>(shared_from_this())));
+#else
WSEndpointInfoPtr info = new InfoI<Ice::WSEndpointInfo>(const_cast<TcpEndpointI*>(this));
+#endif
fillEndpointInfo(info.get());
info->resource = resource;
return info;
@@ -87,11 +99,15 @@ IceInternal::TcpEndpointI::timeout(Int timeout) const
{
if(timeout == _timeout)
{
+#ifdef ICE_CPP11_MAPPING
+ return dynamic_pointer_cast<TcpEndpointI>(const_pointer_cast<EndpointI>(shared_from_this()));
+#else
return const_cast<TcpEndpointI*>(this);
+#endif
}
else
{
- return new TcpEndpointI(_instance, _host, _port, _sourceAddr, timeout, _connectionId, _compress);
+ return ICE_MAKE_SHARED(TcpEndpointI, _instance, _host, _port, _sourceAddr, timeout, _connectionId, _compress);
}
}
@@ -106,11 +122,15 @@ IceInternal::TcpEndpointI::compress(bool compress) const
{
if(compress == _compress)
{
+#ifdef ICE_CPP11_MAPPING
+ return dynamic_pointer_cast<TcpEndpointI>(const_pointer_cast<EndpointI>(shared_from_this()));
+#else
return const_cast<TcpEndpointI*>(this);
+#endif
}
else
{
- return new TcpEndpointI(_instance, _host, _port, _sourceAddr, _timeout, _connectionId, compress);
+ return ICE_MAKE_SHARED(TcpEndpointI, _instance, _host, _port, _sourceAddr, _timeout, _connectionId, compress);
}
}
@@ -123,19 +143,23 @@ IceInternal::TcpEndpointI::datagram() const
TransceiverPtr
IceInternal::TcpEndpointI::transceiver() const
{
- return 0;
+ return ICE_NULLPTR;
}
AcceptorPtr
IceInternal::TcpEndpointI::acceptor(const string&) const
{
+#ifdef ICE_CPP11_MAPPING
+ return new TcpAcceptor(dynamic_pointer_cast<TcpEndpointI>(const_pointer_cast<EndpointI>(shared_from_this())), _instance, _host, _port);
+#else
return new TcpAcceptor(const_cast<TcpEndpointI*>(this), _instance, _host, _port);
+#endif
}
TcpEndpointIPtr
IceInternal::TcpEndpointI::endpoint(const TcpAcceptorPtr& acceptor) const
{
- return new TcpEndpointI(_instance, _host, acceptor->effectivePort(), _sourceAddr, _timeout, _connectionId,
+ return ICE_MAKE_SHARED(TcpEndpointI, _instance, _host, acceptor->effectivePort(), _sourceAddr, _timeout, _connectionId,
_compress);
}
@@ -171,7 +195,11 @@ IceInternal::TcpEndpointI::options() const
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::TcpEndpointI::operator==(const EndpointI& r) const
+#else
IceInternal::TcpEndpointI::operator==(const LocalObject& r) const
+#endif
{
if(!IPEndpointI::operator==(r))
{
@@ -198,12 +226,15 @@ IceInternal::TcpEndpointI::operator==(const LocalObject& r) const
{
return false;
}
-
return true;
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::TcpEndpointI::operator<(const EndpointI& r) const
+#else
IceInternal::TcpEndpointI::operator<(const LocalObject& r) const
+#endif
{
const TcpEndpointI* p = dynamic_cast<const TcpEndpointI*>(&r);
if(!p)
@@ -330,7 +361,7 @@ IceInternal::TcpEndpointI::createConnector(const Address& address, const Network
IPEndpointIPtr
IceInternal::TcpEndpointI::createEndpoint(const string& host, int port, const string& connectionId) const
{
- return new TcpEndpointI(_instance, host, port, _sourceAddr, _timeout, connectionId, _compress);
+ return ICE_MAKE_SHARED(TcpEndpointI, _instance, host, port, _sourceAddr, _timeout, connectionId, _compress);
}
IceInternal::TcpEndpointFactory::TcpEndpointFactory(const ProtocolInstancePtr& instance) : _instance(instance)
@@ -356,7 +387,7 @@ IceInternal::TcpEndpointFactory::protocol() const
EndpointIPtr
IceInternal::TcpEndpointFactory::create(vector<string>& args, bool oaEndpoint) const
{
- IPEndpointIPtr endpt = new TcpEndpointI(_instance);
+ IPEndpointIPtr endpt = ICE_MAKE_SHARED(TcpEndpointI, _instance);
endpt->initWithOptions(args, oaEndpoint);
return endpt;
}
@@ -364,7 +395,7 @@ IceInternal::TcpEndpointFactory::create(vector<string>& args, bool oaEndpoint) c
EndpointIPtr
IceInternal::TcpEndpointFactory::read(BasicStream* s) const
{
- return new TcpEndpointI(_instance, s);
+ return ICE_MAKE_SHARED(TcpEndpointI, _instance, s);
}
void
diff --git a/cpp/src/Ice/TcpEndpointI.h b/cpp/src/Ice/TcpEndpointI.h
index d29498fc181..6c93a1491ec 100644
--- a/cpp/src/Ice/TcpEndpointI.h
+++ b/cpp/src/Ice/TcpEndpointI.h
@@ -41,9 +41,13 @@ public:
virtual AcceptorPtr acceptor(const std::string&) const;
virtual std::string options() const;
+#ifdef ICE_CPP11_MAPPING
+ virtual bool operator==(const EndpointI&) const;
+ virtual bool operator<(const EndpointI&) const;
+#else
virtual bool operator==(const Ice::LocalObject&) const;
virtual bool operator<(const Ice::LocalObject&) const;
-
+#endif
TcpEndpointIPtr endpoint(const TcpAcceptorPtr&) const;
using IPEndpointI::connectionId;
diff --git a/cpp/src/Ice/TcpTransceiver.cpp b/cpp/src/Ice/TcpTransceiver.cpp
index 7ca16363d83..6e744ff4919 100644
--- a/cpp/src/Ice/TcpTransceiver.cpp
+++ b/cpp/src/Ice/TcpTransceiver.cpp
@@ -103,7 +103,7 @@ IceInternal::TcpTransceiver::toDetailedString() const
Ice::ConnectionInfoPtr
IceInternal::TcpTransceiver::getInfo() const
{
- TCPConnectionInfoPtr info = new TCPConnectionInfo();
+ TCPConnectionInfoPtr info = ICE_MAKE_SHARED(TCPConnectionInfo);
fillConnectionInfo(info);
return info;
}
@@ -111,7 +111,7 @@ IceInternal::TcpTransceiver::getInfo() const
Ice::ConnectionInfoPtr
IceInternal::TcpTransceiver::getWSInfo(const Ice::HeaderDict& headers) const
{
- WSConnectionInfoPtr info = new WSConnectionInfo();
+ WSConnectionInfoPtr info = ICE_MAKE_SHARED(WSConnectionInfo);
fillConnectionInfo(info);
info->headers = headers;
return info;
diff --git a/cpp/src/Ice/ThreadPool.cpp b/cpp/src/Ice/ThreadPool.cpp
index 0de8b971559..95ca1000e7d 100644
--- a/cpp/src/Ice/ThreadPool.cpp
+++ b/cpp/src/Ice/ThreadPool.cpp
@@ -345,7 +345,7 @@ IceInternal::ThreadPool::ThreadPool(const InstancePtr& instance, const string& p
const_cast<int&>(_priority) = properties->getPropertyAsInt("Ice.ThreadPriority");
}
- _workQueue = new ThreadPoolWorkQueue(*this);
+ _workQueue = ICE_MAKE_SHARED(ThreadPoolWorkQueue, *this);
_selector.initialize(_workQueue.get());
if(_instance->traceLevels()->threadPool >= 1)
@@ -674,7 +674,11 @@ IceInternal::ThreadPool::run(const EventHandlerThreadPtr& thread)
if(_nextHandler != _handlers.end())
{
current._ioCompleted = false;
+#ifdef ICE_CPP11_MAPPING
+ current._handler = dynamic_pointer_cast<EventHandler>(_nextHandler->first->shared_from_this());
+#else
current._handler = _nextHandler->first;
+#endif
current.operation = _nextHandler->second;
++_nextHandler;
thread->setState(ThreadStateInUseForIO);
@@ -726,10 +730,20 @@ IceInternal::ThreadPool::run(const EventHandlerThreadPtr& thread)
{
current._ioCompleted = false;
#ifdef ICE_OS_WINRT
+# ifdef ICE_CPP11_MAPPING
+ current._handler = dynamic_pointer_cast<EventHandler>(
+ _selector.getNextHandler(current.operation, _threadIdleTime)->shared_from_this());
+# else
current._handler = _selector.getNextHandler(current.operation, _threadIdleTime);
+# endif
#else
+# ifdef ICE_CPP11_MAPPING
+ current._handler = dynamic_pointer_cast<EventHandler>(_selector.getNextHandler(current.operation,
+ current._count, current._error, _threadIdleTime)->shared_from_this());
+# else
current._handler = _selector.getNextHandler(current.operation, current._count, current._error,
_threadIdleTime);
+# endif
#endif
}
catch(const SelectorTimeoutException&)
@@ -776,10 +790,20 @@ IceInternal::ThreadPool::run(const EventHandlerThreadPtr& thread)
try
{
#ifdef ICE_OS_WINRT
+# ifdef ICE_CPP11_MAPPING
+ current._handler = dynamic_pointer_cast<EventHandler>(_selector.getNextHandler(
+ current.operation, _serverIdleTime)->shared_from_this());
+# else
current._handler = _selector.getNextHandler(current.operation, _serverIdleTime);
+# endif
#else
+# ifdef ICE_CPP11_MAPPING
+ current._handler = dynamic_pointer_cast<EventHandler>(_selector.getNextHandler(current.operation,
+ current._count, current._error, _serverIdleTime)->shared_from_this());
+# else
current._handler = _selector.getNextHandler(current.operation, current._count, current._error,
- _serverIdleTime);
+ _serverIdleTime);
+# endif
#endif
}
catch(const SelectorTimeoutException&)
diff --git a/cpp/src/Ice/ThreadPool.h b/cpp/src/Ice/ThreadPool.h
index f97ff363f1b..c6db0465bee 100644
--- a/cpp/src/Ice/ThreadPool.h
+++ b/cpp/src/Ice/ThreadPool.h
@@ -35,7 +35,7 @@ namespace IceInternal
class ThreadPoolCurrent;
class ThreadPoolWorkQueue;
-typedef IceUtil::Handle<ThreadPoolWorkQueue> ThreadPoolWorkQueuePtr;
+ICE_DEFINE_PTR(ThreadPoolWorkQueuePtr, ThreadPoolWorkQueue);
class ThreadPoolWorkItem : virtual public IceUtil::Shared
{
diff --git a/cpp/src/Ice/TraceUtil.cpp b/cpp/src/Ice/TraceUtil.cpp
index c0c19e7a22b..19f672b1459 100644
--- a/cpp/src/Ice/TraceUtil.cpp
+++ b/cpp/src/Ice/TraceUtil.cpp
@@ -73,21 +73,21 @@ printRequestHeader(ostream& s, BasicStream& stream)
Byte mode;
stream.read(mode);
s << "\nmode = " << static_cast<int>(mode) << ' ';
- switch(mode)
+ switch(static_cast<OperationMode>(mode))
{
- case Normal:
+ case ICE_ENUM(OperationMode, Normal):
{
s << "(normal)";
break;
}
- case Nonmutating:
+ case ICE_ENUM(OperationMode, Nonmutating):
{
s << "(nonmutating)";
break;
}
- case Idempotent:
+ case ICE_ENUM(OperationMode, Idempotent):
{
s << "(idempotent)";
break;
diff --git a/cpp/src/Ice/UdpEndpointI.cpp b/cpp/src/Ice/UdpEndpointI.cpp
index 019ff02a368..cffe27fb7ec 100644
--- a/cpp/src/Ice/UdpEndpointI.cpp
+++ b/cpp/src/Ice/UdpEndpointI.cpp
@@ -22,7 +22,9 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(UdpEndpointI* p) { return p; }
+#endif
extern "C"
{
@@ -76,7 +78,12 @@ IceInternal::UdpEndpointI::UdpEndpointI(const ProtocolInstancePtr& instance, Bas
EndpointInfoPtr
IceInternal::UdpEndpointI::getInfo() const
{
+#ifdef ICE_CPP11_MAPPING
+ Ice::UDPEndpointInfoPtr info = make_shared<InfoI<Ice::UDPEndpointInfo>>(
+ dynamic_pointer_cast<UdpEndpointI>(const_pointer_cast<EndpointI>(shared_from_this())));
+#else
Ice::UDPEndpointInfoPtr info = new InfoI<Ice::UDPEndpointInfo>(const_cast<UdpEndpointI*>(this));
+#endif
fillEndpointInfo(info.get());
return info;
}
@@ -90,7 +97,11 @@ IceInternal::UdpEndpointI::timeout() const
EndpointIPtr
IceInternal::UdpEndpointI::timeout(Int) const
{
+#ifdef ICE_CPP11_MAPPING
+ return const_pointer_cast<EndpointI>(shared_from_this());
+#else
return const_cast<UdpEndpointI*>(this);
+#endif
}
bool
@@ -104,12 +115,16 @@ IceInternal::UdpEndpointI::compress(bool compress) const
{
if(compress == _compress)
{
+#ifdef ICE_CPP11_MAPPING
+ return const_pointer_cast<EndpointI>(shared_from_this());
+#else
return const_cast<UdpEndpointI*>(this);
+#endif
}
else
{
- return new UdpEndpointI(_instance, _host, _port, _sourceAddr, _mcastInterface, _mcastTtl, _connect,
- _connectionId, compress);
+ return ICE_MAKE_SHARED(UdpEndpointI, _instance, _host, _port, _sourceAddr, _mcastInterface, _mcastTtl,
+ _connect, _connectionId, compress);
}
}
@@ -122,7 +137,12 @@ IceInternal::UdpEndpointI::datagram() const
TransceiverPtr
IceInternal::UdpEndpointI::transceiver() const
{
+#ifdef ICE_CPP11_MAPPING
+ return new UdpTransceiver(dynamic_pointer_cast<UdpEndpointI>(const_pointer_cast<EndpointI>(shared_from_this())),
+ _instance, _host, _port, _mcastInterface, _connect);
+#else
return new UdpTransceiver(const_cast<UdpEndpointI*>(this), _instance, _host, _port, _mcastInterface, _connect);
+#endif
}
AcceptorPtr
@@ -134,8 +154,8 @@ IceInternal::UdpEndpointI::acceptor(const string&) const
UdpEndpointIPtr
IceInternal::UdpEndpointI::endpoint(const UdpTransceiverPtr& transceiver) const
{
- return new UdpEndpointI(_instance, _host, transceiver->effectivePort(), _sourceAddr, _mcastInterface, _mcastTtl,
- _connect, _connectionId, _compress);
+ return ICE_MAKE_SHARED(UdpEndpointI, _instance, _host, transceiver->effectivePort(), _sourceAddr, _mcastInterface,
+ _mcastTtl, _connect, _connectionId, _compress);
}
string
@@ -175,7 +195,11 @@ IceInternal::UdpEndpointI::options() const
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::UdpEndpointI::operator==(const EndpointI& r) const
+#else
IceInternal::UdpEndpointI::operator==(const LocalObject& r) const
+#endif
{
if(!IPEndpointI::operator==(r))
{
@@ -217,7 +241,11 @@ IceInternal::UdpEndpointI::operator==(const LocalObject& r) const
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::UdpEndpointI::operator<(const EndpointI& r) const
+#else
IceInternal::UdpEndpointI::operator<(const LocalObject& r) const
+#endif
{
const UdpEndpointI* p = dynamic_cast<const UdpEndpointI*>(&r);
if(!p)
@@ -406,8 +434,8 @@ IceInternal::UdpEndpointI::createConnector(const Address& address, const Network
IPEndpointIPtr
IceInternal::UdpEndpointI::createEndpoint(const string& host, int port, const string& connectionId) const
{
- return new UdpEndpointI(_instance, host, port, _sourceAddr, _mcastInterface, _mcastTtl, _connect, connectionId,
- _compress);
+ return ICE_MAKE_SHARED(UdpEndpointI, _instance, host, port, _sourceAddr, _mcastInterface, _mcastTtl, _connect,
+ connectionId, _compress);
}
IceInternal::UdpEndpointFactory::UdpEndpointFactory(const ProtocolInstancePtr& instance) : _instance(instance)
@@ -433,7 +461,7 @@ IceInternal::UdpEndpointFactory::protocol() const
EndpointIPtr
IceInternal::UdpEndpointFactory::create(vector<string>& args, bool oaEndpoint) const
{
- IPEndpointIPtr endpt = new UdpEndpointI(_instance);
+ IPEndpointIPtr endpt = ICE_MAKE_SHARED(UdpEndpointI, _instance);
endpt->initWithOptions(args, oaEndpoint);
return endpt;
}
@@ -441,7 +469,7 @@ IceInternal::UdpEndpointFactory::create(vector<string>& args, bool oaEndpoint) c
EndpointIPtr
IceInternal::UdpEndpointFactory::read(BasicStream* s) const
{
- return new UdpEndpointI(_instance, s);
+ return ICE_MAKE_SHARED(UdpEndpointI, _instance, s);
}
void
diff --git a/cpp/src/Ice/UdpEndpointI.h b/cpp/src/Ice/UdpEndpointI.h
index 30ab27fb51e..66913066c15 100644
--- a/cpp/src/Ice/UdpEndpointI.h
+++ b/cpp/src/Ice/UdpEndpointI.h
@@ -39,9 +39,14 @@ public:
virtual AcceptorPtr acceptor(const std::string&) const;
virtual std::string options() const;
+#ifdef ICE_CPP11_MAPPING
+ virtual bool operator==(const EndpointI&) const;
+ virtual bool operator<(const EndpointI&) const;
+#else
virtual bool operator==(const Ice::LocalObject&) const;
virtual bool operator<(const Ice::LocalObject&) const;
-
+#endif
+
UdpEndpointIPtr endpoint(const UdpTransceiverPtr&) const;
using IPEndpointI::connectionId;
diff --git a/cpp/src/Ice/UdpTransceiver.cpp b/cpp/src/Ice/UdpTransceiver.cpp
index b1b3c8562b6..072fbe52da1 100644
--- a/cpp/src/Ice/UdpTransceiver.cpp
+++ b/cpp/src/Ice/UdpTransceiver.cpp
@@ -821,7 +821,7 @@ IceInternal::UdpTransceiver::toDetailedString() const
Ice::ConnectionInfoPtr
IceInternal::UdpTransceiver::getInfo() const
{
- Ice::UDPConnectionInfoPtr info = new Ice::UDPConnectionInfo();
+ Ice::UDPConnectionInfoPtr info = ICE_MAKE_SHARED(Ice::UDPConnectionInfo);
#if defined(ICE_OS_WINRT)
if(isMulticast(_addr) || isAddressValid(_mcastAddr))
{
diff --git a/cpp/src/Ice/Value.cpp b/cpp/src/Ice/Value.cpp
new file mode 100644
index 00000000000..b791bd59d3d
--- /dev/null
+++ b/cpp/src/Ice/Value.cpp
@@ -0,0 +1,69 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+#include <Ice/Value.h>
+#include <Ice/Stream.h>
+#include <Ice/LocalException.h>
+
+#ifdef ICE_CPP11_MAPPING
+
+using namespace std;
+using namespace Ice;
+using namespace IceInternal;
+
+void
+Ice::Value::ice_preMarshal()
+{
+}
+
+void
+Ice::Value::ice_postUnmarshal()
+{
+}
+
+void
+Ice::Value::__write(IceInternal::BasicStream* os) const
+{
+ os->startWriteObject(0);
+ __writeImpl(os);
+ os->endWriteObject();
+}
+
+void
+Ice::Value::__read(IceInternal::BasicStream* is)
+{
+ is->startReadObject();
+ __readImpl(is);
+ is->endReadObject(false);
+}
+
+namespace
+{
+
+const string __Ice__Object_ids[] =
+{
+ "::Ice::Object"
+};
+
+}
+
+const string&
+Ice::Value::ice_id() const
+{
+ return __Ice__Object_ids[0];
+}
+
+
+const string&
+Ice::Value::ice_staticId()
+{
+ return __Ice__Object_ids[0];
+}
+
+#endif
diff --git a/cpp/src/Ice/VirtualShared.h b/cpp/src/Ice/VirtualShared.h
new file mode 100644
index 00000000000..4de4d0b17bc
--- /dev/null
+++ b/cpp/src/Ice/VirtualShared.h
@@ -0,0 +1,31 @@
+// **********************************************************************
+//
+// Copyright (c) 2003-2015 ZeroC, Inc. All rights reserved.
+//
+// This copy of Ice is licensed to you under the terms described in the
+// ICE_LICENSE file included in this distribution.
+//
+// **********************************************************************
+
+#ifndef ICE_VIRTUAL_SHARED_H
+#define ICE_VIRTUAL_SHARED_H
+
+#include <IceUtil/Config.h>
+
+#ifdef ICE_CPP11_MAPPING
+
+namespace IceInternal
+{
+
+class VirtualShared : public ::std::enable_shared_from_this<VirtualShared>
+{
+public:
+
+ virtual ~VirtualShared() = default;
+};
+
+}
+
+#endif
+
+#endif
diff --git a/cpp/src/Ice/WSEndpoint.cpp b/cpp/src/Ice/WSEndpoint.cpp
index d23b952b6b5..c1f9c520b18 100644
--- a/cpp/src/Ice/WSEndpoint.cpp
+++ b/cpp/src/Ice/WSEndpoint.cpp
@@ -20,15 +20,20 @@ using namespace std;
using namespace Ice;
using namespace IceInternal;
+#ifndef ICE_CPP11_MAPPING
IceUtil::Shared* IceInternal::upCast(WSEndpoint* p) { return p; }
+#endif
IceInternal::WSEndpoint::WSEndpoint(const ProtocolInstancePtr& instance, const EndpointIPtr& del, const string& res) :
- _instance(instance), _delegate(IPEndpointIPtr::dynamicCast(del)), _resource(res)
+ _instance(instance),
+ _delegate(ICE_DYNAMIC_CAST(IPEndpointI, del)),
+ _resource(res)
{
}
IceInternal::WSEndpoint::WSEndpoint(const ProtocolInstancePtr& inst, const EndpointIPtr& del, vector<string>& args) :
- _instance(inst), _delegate(IPEndpointIPtr::dynamicCast(del))
+ _instance(inst),
+ _delegate(ICE_DYNAMIC_CAST(IPEndpointI, del))
{
initWithOptions(args);
@@ -39,7 +44,8 @@ IceInternal::WSEndpoint::WSEndpoint(const ProtocolInstancePtr& inst, const Endpo
}
IceInternal::WSEndpoint::WSEndpoint(const ProtocolInstancePtr& instance, const EndpointIPtr& del, BasicStream* s) :
- _instance(instance), _delegate(IPEndpointIPtr::dynamicCast(del))
+ _instance(instance),
+ _delegate(ICE_DYNAMIC_CAST(IPEndpointI, del))
{
s->read(const_cast<string&>(_resource), false);
}
@@ -47,8 +53,13 @@ IceInternal::WSEndpoint::WSEndpoint(const ProtocolInstancePtr& instance, const E
Ice::EndpointInfoPtr
IceInternal::WSEndpoint::getInfo() const
{
+#ifdef ICE_CPP11_MAPPING
+ assert(dynamic_pointer_cast<WSEndpointDelegate>(_delegate));
+ return dynamic_pointer_cast<WSEndpointDelegate>(_delegate)->getWSInfo(_resource);
+#else
assert(dynamic_cast<WSEndpointDelegate*>(_delegate.get()));
return dynamic_cast<WSEndpointDelegate*>(_delegate.get())->getWSInfo(_resource);
+#endif
}
Ice::Short
@@ -83,11 +94,15 @@ IceInternal::WSEndpoint::timeout(Int timeout) const
{
if(timeout == _delegate->timeout())
{
+#ifdef ICE_CPP11_MAPPING
+ return const_pointer_cast<EndpointI>(shared_from_this());
+#else
return const_cast<WSEndpoint*>(this);
+#endif
}
else
{
- return new WSEndpoint(_instance, _delegate->timeout(timeout), _resource);
+ return ICE_MAKE_SHARED(WSEndpoint, _instance, _delegate->timeout(timeout), _resource);
}
}
@@ -102,11 +117,15 @@ IceInternal::WSEndpoint::connectionId(const string& connectionId) const
{
if(connectionId == _delegate->connectionId())
{
+#ifdef ICE_CPP11_MAPPING
+ return const_pointer_cast<EndpointI>(shared_from_this());
+#else
return const_cast<WSEndpoint*>(this);
+#endif
}
else
{
- return new WSEndpoint(_instance, _delegate->connectionId(connectionId), _resource);
+ return ICE_MAKE_SHARED(WSEndpoint, _instance, _delegate->connectionId(connectionId), _resource);
}
}
@@ -121,11 +140,15 @@ IceInternal::WSEndpoint::compress(bool compress) const
{
if(compress == _delegate->compress())
{
+#ifdef ICE_CPP11_MAPPING
+ return const_pointer_cast<EndpointI>(shared_from_this());
+#else
return const_cast<WSEndpoint*>(this);
+#endif
}
else
{
- return new WSEndpoint(_instance, _delegate->compress(compress), _resource);
+ return ICE_MAKE_SHARED(WSEndpoint, _instance, _delegate->compress(compress), _resource);
}
}
@@ -184,21 +207,26 @@ IceInternal::WSEndpoint::connectors_async(Ice::EndpointSelectionType selType,
const int _port;
const string _resource;
};
- _delegate->connectors_async(selType, new CallbackI(callback, _instance, _delegate->host(), _delegate->port(),
- _resource));
+ _delegate->connectors_async(selType, ICE_MAKE_SHARED(CallbackI, callback, _instance, _delegate->host(),
+ _delegate->port(), _resource));
}
AcceptorPtr
IceInternal::WSEndpoint::acceptor(const string& adapterName) const
{
AcceptorPtr delAcc = _delegate->acceptor(adapterName);
+#ifdef ICE_CPP11_MAPPING
+ return new WSAcceptor(dynamic_pointer_cast<WSEndpoint>(const_pointer_cast<EndpointI>(shared_from_this())),
+ _instance, delAcc);
+#else
return new WSAcceptor(const_cast<WSEndpoint*>(this), _instance, delAcc);
+#endif
}
WSEndpointPtr
IceInternal::WSEndpoint::endpoint(const EndpointIPtr& delEndp) const
{
- return new WSEndpoint(_instance, delEndp, _resource);
+ return ICE_MAKE_SHARED(WSEndpoint, _instance, delEndp, _resource);
}
vector<EndpointIPtr>
@@ -207,7 +235,13 @@ IceInternal::WSEndpoint::expand() const
vector<EndpointIPtr> endps = _delegate->expand();
for(vector<EndpointIPtr>::iterator p = endps.begin(); p != endps.end(); ++p)
{
+#ifdef ICE_CPP11_MAPPING
+ *p = p->get() == _delegate.get() ?
+ dynamic_pointer_cast<WSEndpoint>(const_pointer_cast<EndpointI>(shared_from_this())) :
+ make_shared<WSEndpoint>(_instance, *p, _resource);
+#else
*p = p->get() == _delegate.get() ? const_cast<WSEndpoint*>(this) : new WSEndpoint(_instance, *p, _resource);
+#endif
}
return endps;
}
@@ -265,11 +299,15 @@ IceInternal::WSEndpoint::options() const
EndpointIPtr
IceInternal::WSEndpoint::delegate() const
{
- return EndpointIPtr::dynamicCast(_delegate);
+ return ICE_DYNAMIC_CAST(EndpointI, _delegate);
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::WSEndpoint::operator==(const EndpointI& r) const
+#else
IceInternal::WSEndpoint::operator==(const Ice::LocalObject& r) const
+#endif
{
const WSEndpoint* p = dynamic_cast<const WSEndpoint*>(&r);
if(!p)
@@ -296,7 +334,11 @@ IceInternal::WSEndpoint::operator==(const Ice::LocalObject& r) const
}
bool
+#ifdef ICE_CPP11_MAPPING
+IceInternal::WSEndpoint::operator<(const EndpointI& r) const
+#else
IceInternal::WSEndpoint::operator<(const Ice::LocalObject& r) const
+#endif
{
const WSEndpoint* p = dynamic_cast<const WSEndpoint*>(&r);
if(!p)
@@ -385,13 +427,13 @@ IceInternal::WSEndpointFactory::protocol() const
EndpointIPtr
IceInternal::WSEndpointFactory::create(vector<string>& args, bool oaEndpoint) const
{
- return new WSEndpoint(_instance, _delegate->create(args, oaEndpoint), args);
+ return ICE_MAKE_SHARED(WSEndpoint, _instance, _delegate->create(args, oaEndpoint), args);
}
EndpointIPtr
IceInternal::WSEndpointFactory::read(BasicStream* s) const
{
- return new WSEndpoint(_instance, _delegate->read(s), s);
+ return ICE_MAKE_SHARED(WSEndpoint, _instance, _delegate->read(s), s);
}
void
diff --git a/cpp/src/Ice/WSEndpoint.h b/cpp/src/Ice/WSEndpoint.h
index 6fb08211a84..a5f4a89d09a 100644
--- a/cpp/src/Ice/WSEndpoint.h
+++ b/cpp/src/Ice/WSEndpoint.h
@@ -65,8 +65,13 @@ public:
EndpointIPtr delegate() const;
WSEndpointPtr endpoint(const EndpointIPtr&) const;
+#ifdef ICE_CPP11_MAPPING
+ virtual bool operator==(const EndpointI&) const;
+ virtual bool operator<(const EndpointI&) const;
+#else
virtual bool operator==(const Ice::LocalObject&) const;
virtual bool operator<(const Ice::LocalObject&) const;
+#endif
protected: