summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe George <joe@zeroc.com>2015-12-08 11:33:42 -0500
committerJoe George <joe@zeroc.com>2015-12-08 16:09:24 -0500
commit6a43686ce26de5d2d5edf4a485ecff3a242c26b6 (patch)
treed31e4f16dc9ed6e28056a7224e045a4638955f5e
parentC++11 mapping IceDiscovery plug-in (diff)
downloadice-6a43686ce26de5d2d5edf4a485ecff3a242c26b6.tar.bz2
ice-6a43686ce26de5d2d5edf4a485ecff3a242c26b6.tar.xz
ice-6a43686ce26de5d2d5edf4a485ecff3a242c26b6.zip
ICE-6908 - Add ValueFactory
ValueFactory is a replacement for ObjectFactory (which is still available if needed). It is an interface with only one operation and can has the "delegate" metadata.
-rw-r--r--CHANGELOG-3.7.md10
-rw-r--r--cpp/include/Ice/.gitignore2
-rw-r--r--cpp/include/Ice/BasicStream.h12
-rw-r--r--cpp/include/Ice/DefaultValueFactory.h (renamed from cpp/include/Ice/DefaultObjectFactory.h)16
-rw-r--r--cpp/include/Ice/FactoryTable.h16
-rw-r--r--cpp/include/Ice/FactoryTableInit.h30
-rw-r--r--cpp/include/Ice/ValueFactoryManagerF.h (renamed from cpp/include/Ice/ObjectFactoryManagerF.h)16
-rw-r--r--cpp/include/IceUtil/Config.h4
-rw-r--r--cpp/src/Glacier2/Instance.cpp10
-rwxr-xr-xcpp/src/Ice/.depend.mak1065
-rw-r--r--cpp/src/Ice/.gitignore1
-rw-r--r--cpp/src/Ice/BasicStream.cpp22
-rw-r--r--cpp/src/Ice/CommunicatorI.cpp44
-rw-r--r--cpp/src/Ice/CommunicatorI.h11
-rw-r--r--cpp/src/Ice/Exception.cpp6
-rw-r--r--cpp/src/Ice/FactoryTable.cpp42
-rw-r--r--cpp/src/Ice/FactoryTableInit.cpp2
-rw-r--r--cpp/src/Ice/Instance.cpp6
-rw-r--r--cpp/src/Ice/Instance.h6
-rw-r--r--cpp/src/Ice/Makefile5
-rw-r--r--cpp/src/Ice/Makefile.mak4
-rw-r--r--cpp/src/Ice/ObjectFactoryManager.cpp147
-rw-r--r--cpp/src/Ice/ObjectFactoryManager.h43
-rw-r--r--cpp/src/Ice/ValueFactoryManager.cpp175
-rw-r--r--cpp/src/Ice/ValueFactoryManager.h61
-rw-r--r--cpp/src/IceGrid/IceGridDB.cpp14
-rw-r--r--cpp/src/slice2cpp/Gen.cpp12
-rw-r--r--cpp/src/slice2java/Gen.cpp9
-rw-r--r--cpp/test/Ice/exceptions/AllTests.cpp17
-rw-r--r--cpp/test/Ice/objects/AllTests.cpp28
-rw-r--r--cpp/test/Ice/objects/Client.cpp63
-rw-r--r--cpp/test/Ice/objects/Collocated.cpp62
-rw-r--r--cpp/test/Ice/objects/Server.cpp22
-rw-r--r--cpp/test/Ice/optional/AllTests.cpp10
-rw-r--r--cpp/test/Ice/slicing/objects/AllTests.cpp42
-rw-r--r--cpp/test/Ice/stream/Client.cpp16
-rw-r--r--csharp/src/Ice/BasicStream.cs28
-rw-r--r--csharp/src/Ice/CommunicatorI.cs16
-rw-r--r--csharp/src/Ice/Instance.cs6
-rw-r--r--csharp/src/Ice/Makefile3
-rw-r--r--csharp/src/Ice/Makefile.mak3
-rw-r--r--csharp/src/Ice/Stream.cs2
-rw-r--r--csharp/src/Ice/ValueFactoryManager.cs (renamed from csharp/src/Ice/ObjectFactoryManager.cs)59
-rw-r--r--csharp/test/Ice/exceptions/AllTests.cs7
-rw-r--r--csharp/test/Ice/exceptions/Makefile8
-rw-r--r--csharp/test/Ice/exceptions/Makefile.mak8
-rw-r--r--csharp/test/Ice/objects/AllTests.cs139
-rw-r--r--csharp/test/Ice/objects/Server.cs38
-rw-r--r--csharp/test/Ice/optional/AllTests.cs10
-rw-r--r--csharp/test/Ice/slicing/objects/AllTests.cs54
-rw-r--r--csharp/test/Ice/stream/AllTests.cs45
-rw-r--r--java/.gitignore1
-rw-r--r--java/.idea/.gitignore2
-rw-r--r--java/.idea/codeStyleSettings.xml34
-rw-r--r--java/gradle/wrapper/gradle-wrapper.properties4
-rw-r--r--java/src/Ice/src/main/java/Ice/CommunicatorI.java14
-rw-r--r--java/src/Ice/src/main/java/Ice/InputStream.java2
-rw-r--r--java/src/Ice/src/main/java/IceInternal/BasicStream.java22
-rw-r--r--java/src/Ice/src/main/java/IceInternal/Ex.java4
-rw-r--r--java/src/Ice/src/main/java/IceInternal/Instance.java6
-rw-r--r--java/src/Ice/src/main/java/IceInternal/ObjectFactoryManager.java79
-rw-r--r--java/src/Ice/src/main/java/IceInternal/ValueFactoryManager.java100
-rw-r--r--java/test/src/main/java/test/Ice/classLoader/AllTests.java12
-rw-r--r--java/test/src/main/java/test/Ice/exceptions/AllTests.java10
-rw-r--r--java/test/src/main/java/test/Ice/exceptions/ValueFactoryI.java (renamed from java/test/src/main/java/test/Ice/exceptions/ObjectFactoryI.java)6
-rw-r--r--java/test/src/main/java/test/Ice/objects/AllTests.java18
-rw-r--r--java/test/src/main/java/test/Ice/objects/Client.java34
-rw-r--r--java/test/src/main/java/test/Ice/objects/Collocated.java33
-rw-r--r--java/test/src/main/java/test/Ice/objects/Server.java16
-rw-r--r--java/test/src/main/java/test/Ice/optional/AllTests.java11
-rw-r--r--java/test/src/main/java/test/Ice/slicing/objects/AllTests.java28
-rw-r--r--java/test/src/main/java/test/Ice/stream/Client.java40
-rw-r--r--js/src/Ice/BasicStream.js18
-rw-r--r--js/src/Ice/Communicator.js10
-rw-r--r--js/src/Ice/Ice.js1
-rw-r--r--js/src/Ice/Instance.js6
-rw-r--r--js/src/Ice/ValueFactory.js (renamed from csharp/test/Ice/exceptions/ObjectFactoryI.cs)15
-rw-r--r--js/src/Ice/ValueFactoryManager.js (renamed from js/src/Ice/ObjectFactoryManager.js)36
-rw-r--r--js/src/Ice/sources.json3
-rw-r--r--js/test/Ice/exceptions/Client.js16
-rw-r--r--js/test/Ice/objects/Client.js56
-rw-r--r--js/test/Ice/slicing/objects/Client.js11
-rw-r--r--objective-c/include/objc/Ice/ObjectFactory.h1
-rw-r--r--objective-c/include/objc/Ice/ValueFactory.h14
-rw-r--r--objective-c/src/Ice/CommunicatorI.h1
-rw-r--r--objective-c/src/Ice/CommunicatorI.mm77
-rw-r--r--objective-c/src/Ice/Exception.mm8
-rw-r--r--objective-c/src/Ice/Makefile2
-rw-r--r--objective-c/test/Ice/objects/AllTests.m10
-rw-r--r--objective-c/test/Ice/objects/Client.m38
-rw-r--r--objective-c/test/Ice/objects/Collocated.m38
-rw-r--r--objective-c/test/Ice/objects/Server.m12
-rw-r--r--objective-c/test/Ice/optional/AllTests.m7
-rw-r--r--objective-c/test/Ice/slicing/objects/AllTests.m8
-rw-r--r--objective-c/test/Ice/stream/Client.m30
-rw-r--r--php/lib/Ice.php6
-rw-r--r--php/lib/Ice_ns.php6
-rw-r--r--php/lib/Makefile5
-rw-r--r--php/lib/Makefile.mak3
-rw-r--r--php/src/IcePHP/Communicator.cpp148
-rw-r--r--php/src/IcePHP/Util.cpp4
-rw-r--r--php/test/Ice/objects/Client.php45
-rw-r--r--php/test/Ice/slicing/objects/Client.php4
-rw-r--r--python/modules/IcePy/Communicator.cpp86
-rw-r--r--python/modules/IcePy/Makefile.mak1
-rw-r--r--python/modules/IcePy/ObjectFactory.cpp73
-rw-r--r--python/modules/IcePy/ObjectFactory.h11
-rw-r--r--python/modules/IcePy/Util.cpp2
-rw-r--r--python/python/Ice.py7
-rw-r--r--python/python/Makefile1
-rw-r--r--python/python/Makefile.mak7
-rw-r--r--python/test/Ice/exceptions/AllTests.py11
-rw-r--r--python/test/Ice/objects/AllTests.py57
-rwxr-xr-xpython/test/Ice/objects/Server.py14
-rw-r--r--python/test/Ice/slicing/objects/AllTests.py24
-rw-r--r--ruby/ruby/Ice.rb3
-rw-r--r--ruby/ruby/Makefile3
-rw-r--r--ruby/src/IceRuby/Communicator.cpp42
-rw-r--r--ruby/src/IceRuby/ObjectFactory.cpp69
-rw-r--r--ruby/src/IceRuby/ObjectFactory.h9
-rw-r--r--ruby/src/IceRuby/Util.cpp4
-rw-r--r--ruby/test/Ice/exceptions/AllTests.rb13
-rw-r--r--ruby/test/Ice/objects/AllTests.rb46
-rw-r--r--ruby/test/Ice/slicing/objects/AllTests.rb4
-rw-r--r--slice/Ice/Communicator.ice73
-rw-r--r--slice/Ice/LocalException.ice18
-rw-r--r--slice/Ice/ObjectFactory.ice2
-rw-r--r--slice/Ice/ValueFactory.ice52
128 files changed, 2572 insertions, 1652 deletions
diff --git a/CHANGELOG-3.7.md b/CHANGELOG-3.7.md
index 8a68cb054c2..c7a2a56d7e9 100644
--- a/CHANGELOG-3.7.md
+++ b/CHANGELOG-3.7.md
@@ -24,9 +24,9 @@ These are the changes since Ice 3.6.1.
IceGrid and IceStorm databases.
- Added support for two additional IceGrid variables: `server.data` and
- `service.data`. These variables point to server and service specific data
- directories created by IceGrid on the node. These data directories are
- automatically removed by IceGrid if you remove the server from the
+ `service.data`. These variables point to server and service specific data
+ directories created by IceGrid on the node. These data directories are
+ automatically removed by IceGrid if you remove the server from the
deployment.
For consistency, the `node.datadir` variable has been deprecated, use the
@@ -35,3 +35,7 @@ These are the changes since Ice 3.6.1.
- Added the new metadata tag `delegate` for local interfaces with one operation.
Interfaces with this metadata will be generated as a `std::function` in C++, a
`delegate` in C#, and a `FunctionalInterface` in Java.
+
+- Added a new local interface `ValueFactory` that replaces `ObjectFactory` (which is
+ still available). This interface has one operation and uses the `delegate`
+ metadata.
diff --git a/cpp/include/Ice/.gitignore b/cpp/include/Ice/.gitignore
index 7111772146c..fd7066fcaa2 100644
--- a/cpp/include/Ice/.gitignore
+++ b/cpp/include/Ice/.gitignore
@@ -39,4 +39,6 @@ Router.h
ServantLocatorF.h
ServantLocator.h
SliceChecksumDict.h
+ValueFactoryF.h
+ValueFactory.h
Version.h
diff --git a/cpp/include/Ice/BasicStream.h b/cpp/include/Ice/BasicStream.h
index 6fc8e06d90b..9c7adf8e3bd 100644
--- a/cpp/include/Ice/BasicStream.h
+++ b/cpp/include/Ice/BasicStream.h
@@ -15,8 +15,8 @@
#include <Ice/Object.h>
#include <Ice/ValueF.h>
#include <Ice/ProxyF.h>
-#include <Ice/ObjectFactory.h>
-#include <Ice/ObjectFactoryManagerF.h>
+#include <Ice/ValueFactory.h>
+#include <Ice/ValueFactoryManagerF.h>
#include <Ice/Buffer.h>
#include <Ice/Protocol.h>
#include <Ice/SlicedDataF.h>
@@ -977,7 +977,7 @@ private:
protected:
- EncapsDecoder(BasicStream* stream, ReadEncaps* encaps, bool sliceObjects, const ObjectFactoryManagerPtr& f) :
+ EncapsDecoder(BasicStream* stream, ReadEncaps* encaps, bool sliceObjects, const ValueFactoryManagerPtr& f) :
_stream(stream), _encaps(encaps), _sliceObjects(sliceObjects), _servantFactoryManager(f), _typeIdIndex(0)
{
}
@@ -1002,7 +1002,7 @@ private:
BasicStream* _stream;
ReadEncaps* _encaps;
const bool _sliceObjects;
- ObjectFactoryManagerPtr _servantFactoryManager;
+ ValueFactoryManagerPtr _servantFactoryManager;
// Encapsulation attributes for object un-marshalling
PatchMap _patchMap;
@@ -1020,7 +1020,7 @@ private:
{
public:
- EncapsDecoder10(BasicStream* stream, ReadEncaps* encaps, bool sliceObjects, const ObjectFactoryManagerPtr& f) :
+ EncapsDecoder10(BasicStream* stream, ReadEncaps* encaps, bool sliceObjects, const ValueFactoryManagerPtr& f) :
EncapsDecoder(stream, encaps, sliceObjects, f), _sliceType(NoSlice)
{
}
@@ -1053,7 +1053,7 @@ private:
{
public:
- EncapsDecoder11(BasicStream* stream, ReadEncaps* encaps, bool sliceObjects, const ObjectFactoryManagerPtr& f) :
+ EncapsDecoder11(BasicStream* stream, ReadEncaps* encaps, bool sliceObjects, const ValueFactoryManagerPtr& f) :
EncapsDecoder(stream, encaps, sliceObjects, f), _preAllocatedInstanceData(0), _current(0), _objectIdIndex(1)
{
}
diff --git a/cpp/include/Ice/DefaultObjectFactory.h b/cpp/include/Ice/DefaultValueFactory.h
index 1ec2a01a7af..15e3aaec7e2 100644
--- a/cpp/include/Ice/DefaultObjectFactory.h
+++ b/cpp/include/Ice/DefaultValueFactory.h
@@ -7,21 +7,21 @@
//
// **********************************************************************
-#ifndef ICE_DEFAULT_OBJECT_FACTORY_H
-#define ICE_DEFAULT_OBJECT_FACTORY_H
+#ifndef ICE_DEFAULT_VALUE_FACTORY_H
+#define ICE_DEFAULT_VALUE_FACTORY_H
#include <Ice/Config.h>
-#include <Ice/ObjectFactory.h>
+#include <Ice/ValueFactory.h>
#ifndef ICE_CPP11_MAPPING
namespace IceInternal
{
template<class O>
-class DefaultObjectFactory : public Ice::ObjectFactory
+class DefaultValueFactory : public Ice::ValueFactory
{
public:
-
- DefaultObjectFactory(const ::std::string& typeId) :
+
+ DefaultValueFactory(const ::std::string& typeId) :
_typeId(typeId)
{
}
@@ -36,10 +36,6 @@ public:
return new O;
}
- virtual void destroy()
- {
- }
-
private:
const ::std::string _typeId;
};
diff --git a/cpp/include/Ice/FactoryTable.h b/cpp/include/Ice/FactoryTable.h
index 24b5243733f..f7afa3f2cd9 100644
--- a/cpp/include/Ice/FactoryTable.h
+++ b/cpp/include/Ice/FactoryTable.h
@@ -12,7 +12,7 @@
#include <IceUtil/Mutex.h>
#include <Ice/UserExceptionFactory.h>
-#include <Ice/ObjectFactory.h>
+#include <Ice/ValueFactory.h>
namespace Ice
@@ -40,12 +40,12 @@ public:
void removeExceptionFactory(const ::std::string&);
#ifdef ICE_CPP11_MAPPING
- void addObjectFactory(const ::std::string&, ::std::function<::Ice::ValuePtr (const ::std::string&)>);
+ void addValueFactory(const ::std::string&, ::std::function<::Ice::ValuePtr (const ::std::string&)>);
#else
- void addObjectFactory(const ::std::string&, const ::Ice::ObjectFactoryPtr&);
+ void addValueFactory(const ::std::string&, const ::Ice::ValueFactoryPtr&);
#endif
- ICE_OBJECT_FACTORY getObjectFactory(const ::std::string&) const;
- void removeObjectFactory(const ::std::string&);
+ ICE_VALUE_FACTORY getValueFactory(const ::std::string&) const;
+ void removeValueFactory(const ::std::string&);
void addTypeId(int, const ::std::string&);
std::string getTypeId(int) const;
@@ -59,9 +59,9 @@ private:
typedef ::std::map< ::std::string, EFPair> EFTable;
EFTable _eft;
- typedef ::std::pair<ICE_OBJECT_FACTORY, int> OFPair;
- typedef ::std::map< ::std::string, OFPair> OFTable;
- OFTable _oft;
+ typedef ::std::pair<ICE_VALUE_FACTORY, int> VFPair;
+ typedef ::std::map< ::std::string, VFPair> VFTable;
+ VFTable _vft;
typedef ::std::pair< ::std::string, int> TypeIdPair;
typedef ::std::map<int, TypeIdPair> TypeIdTable;
diff --git a/cpp/include/Ice/FactoryTableInit.h b/cpp/include/Ice/FactoryTableInit.h
index 86287412375..51660970d1d 100644
--- a/cpp/include/Ice/FactoryTableInit.h
+++ b/cpp/include/Ice/FactoryTableInit.h
@@ -11,7 +11,7 @@
#define ICE_FACTORYTABLEINIT_H
#include <Ice/FactoryTable.h>
-#include <Ice/DefaultObjectFactory.h>
+#include <Ice/DefaultValueFactory.h>
namespace IceInternal
{
@@ -32,11 +32,11 @@ extern ICE_API FactoryTable* factoryTable;
class ICE_API CompactIdInit
{
public:
-
+
CompactIdInit(const char*, int);
-
+
~CompactIdInit();
-
+
private:
const int _compactId;
};
@@ -45,7 +45,7 @@ template<class E>
class DefaultUserExceptionFactoryInit
{
public:
-
+
DefaultUserExceptionFactoryInit(const char* typeId) :
_typeId(typeId)
{
@@ -56,38 +56,38 @@ public:
{
factoryTable->removeExceptionFactory(_typeId);
}
-
+
private:
const ::std::string _typeId;
};
template<class O>
-class DefaultObjectFactoryInit
+class DefaultValueFactoryInit
{
public:
-
- DefaultObjectFactoryInit(const char* typeId) :
+
+ DefaultValueFactoryInit(const char* typeId) :
_typeId(typeId)
{
#ifdef ICE_CPP11_MAPPING
- factoryTable->addObjectFactory(_typeId,
+ factoryTable->addValueFactory(_typeId,
[](const std::string&)
{
return ::std::make_shared<O>();
});
#else
- factoryTable->addObjectFactory(_typeId, new DefaultObjectFactory<O>(_typeId));
+ factoryTable->addValueFactory(_typeId, new DefaultValueFactory<O>(_typeId));
#endif
}
- ~DefaultObjectFactoryInit()
+ ~DefaultValueFactoryInit()
{
- factoryTable->removeObjectFactory(_typeId);
+ factoryTable->removeValueFactory(_typeId);
}
-
+
private:
const ::std::string _typeId;
-
+
};
}
diff --git a/cpp/include/Ice/ObjectFactoryManagerF.h b/cpp/include/Ice/ValueFactoryManagerF.h
index 119ee53219a..6a7b05f997e 100644
--- a/cpp/include/Ice/ObjectFactoryManagerF.h
+++ b/cpp/include/Ice/ValueFactoryManagerF.h
@@ -7,8 +7,8 @@
//
// **********************************************************************
-#ifndef ICE_OBJECT_FACTORY_MANAGER_F_H
-#define ICE_OBJECT_FACTORY_MANAGER_F_H
+#ifndef ICE_VALUE_FACTORY_MANAGER_F_H
+#define ICE_VALUE_FACTORY_MANAGER_F_H
#include <IceUtil/Shared.h>
@@ -17,9 +17,15 @@
namespace IceInternal
{
-class ObjectFactoryManager;
-IceUtil::Shared* upCast(ObjectFactoryManager*);
-typedef Handle<ObjectFactoryManager> ObjectFactoryManagerPtr;
+#ifndef ICE_CPP11_MAPPING
+class ValueFactoryWrapper;
+IceUtil::Shared* upCast(ValueFactoryWrapper*);
+typedef Handle<ValueFactoryWrapper> ValueFactoryWrapperPtr;
+#endif
+
+class ValueFactoryManager;
+IceUtil::Shared* upCast(ValueFactoryManager*);
+typedef Handle<ValueFactoryManager> ValueFactoryManagerPtr;
}
diff --git a/cpp/include/IceUtil/Config.h b/cpp/include/IceUtil/Config.h
index 7f0aebb879c..a3e5b083aa2 100644
--- a/cpp/include/IceUtil/Config.h
+++ b/cpp/include/IceUtil/Config.h
@@ -267,7 +267,7 @@ typedef long long Int64;
# define ICE_SHARED_FROM_THIS shared_from_this()
# define ICE_CHECKED_CAST(T,V) Ice::checkedCast<T>(V)
# define ICE_UNCHECKED_CAST(T,V) Ice::uncheckedCast<T>(V)
-# define ICE_OBJECT_FACTORY ::std::function<::Ice::ValuePtr (const std::string& type)>
+# define ICE_VALUE_FACTORY ::std::function<::Ice::ValuePtr (const std::string& type)>
#else // C++98 mapping
# define ICE_HANDLE ::IceUtil::Handle
# define ICE_INTERNAL_HANDLE ::IceInternal::Handle
@@ -281,7 +281,7 @@ typedef long long Int64;
# define ICE_SHARED_FROM_THIS this
# define ICE_CHECKED_CAST(T,V) T::checkedCast(V)
# define ICE_UNCHECKED_CAST(T,V) T::uncheckedCast(V)
-# define ICE_OBJECT_FACTORY ::Ice::ObjectFactoryPtr
+# define ICE_VALUE_FACTORY ::Ice::ValueFactoryPtr
#endif
#endif
diff --git a/cpp/src/Glacier2/Instance.cpp b/cpp/src/Glacier2/Instance.cpp
index 83eab27bda7..f9c4c1dc00a 100644
--- a/cpp/src/Glacier2/Instance.cpp
+++ b/cpp/src/Glacier2/Instance.cpp
@@ -25,7 +25,7 @@ const string clientBuffered = "Glacier2.Client.Buffered";
}
-Glacier2::Instance::Instance(const Ice::CommunicatorPtr& communicator, const Ice::ObjectAdapterPtr& clientAdapter,
+Glacier2::Instance::Instance(const Ice::CommunicatorPtr& communicator, const Ice::ObjectAdapterPtr& clientAdapter,
const Ice::ObjectAdapterPtr& serverAdapter) :
_communicator(communicator),
_properties(communicator->getProperties()),
@@ -69,12 +69,12 @@ Glacier2::Instance::Instance(const Ice::CommunicatorPtr& communicator, const Ice
// If an Ice metrics observer is setup on the communicator, also
// enable metrics for IceStorm.
//
- IceInternal::CommunicatorObserverIPtr o =
+ IceInternal::CommunicatorObserverIPtr o =
IceInternal::CommunicatorObserverIPtr::dynamicCast(communicator->getObserver());
if(o)
{
- const_cast<Glacier2::Instrumentation::RouterObserverPtr&>(_observer) =
- new RouterObserverI(o->getFacet(),
+ const_cast<Glacier2::Instrumentation::RouterObserverPtr&>(_observer) =
+ new RouterObserverI(o->getFacet(),
_properties->getPropertyWithDefault("Glacier2.InstanceName", "Glacier2"));
}
}
@@ -90,7 +90,7 @@ Glacier2::Instance::destroy()
{
_clientRequestQueueThread->destroy();
}
-
+
if(_serverRequestQueueThread)
{
_serverRequestQueueThread->destroy();
diff --git a/cpp/src/Ice/.depend.mak b/cpp/src/Ice/.depend.mak
index f858d5d4a32..4f4e11d2b6b 100755
--- a/cpp/src/Ice/.depend.mak
+++ b/cpp/src/Ice/.depend.mak
@@ -8,6 +8,7 @@ Communicator.h: \
"$(slicedir)/Ice/InstrumentationF.ice" \
"$(slicedir)/Ice/ObjectAdapterF.ice" \
"$(slicedir)/Ice/ObjectFactory.ice" \
+ "$(slicedir)/Ice/ValueFactory.ice" \
"$(slicedir)/Ice/RouterF.ice" \
"$(slicedir)/Ice/LocatorF.ice" \
"$(slicedir)/Ice/PluginF.ice" \
@@ -179,6 +180,9 @@ ServantLocatorF.h: \
SliceChecksumDict.h: \
"$(slicedir)\Ice\SliceChecksumDict.ice"
+ValueFactory.h: \
+ "$(slicedir)\Ice\ValueFactory.ice"
+
Version.h: \
"$(slicedir)\Ice\Version.ice"
@@ -247,13 +251,15 @@ Acceptor.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
@@ -319,15 +325,16 @@ ACM.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\LoggerF.h" \
"ConnectionI.h" \
@@ -346,9 +353,9 @@ ACM.obj: \
"NetworkF.h" \
"NetworkProxyF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -359,6 +366,8 @@ ACM.obj: \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
@@ -390,6 +399,7 @@ Application.obj: \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\Config.h" \
"$(includedir)\IceUtil\Config.h" \
+ "$(includedir)\Ice\Comparable.h" \
"$(includedir)\Ice\DeprecatedStringConverter.h" \
"$(includedir)\Ice\CommunicatorF.h" \
"$(includedir)\Ice\ProxyF.h" \
@@ -450,17 +460,17 @@ Application.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\InstrumentationF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
@@ -470,13 +480,14 @@ Application.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\RemoteLogger.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"$(includedir)\Ice\Communicator.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -505,6 +516,7 @@ Application.obj: \
"$(includedir)\Ice\SliceChecksumDict.h" \
"$(includedir)\Ice\Service.h" \
"$(includedir)\Ice\RegisterPlugins.h" \
+ "$(includedir)\Ice\InterfaceByValue.h" \
"LoggerI.h" \
"$(includedir)\IceUtil\FileUtil.h" \
"$(includedir)\IceUtil\CtrlCHandler.h" \
@@ -562,8 +574,8 @@ AsyncResult.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -581,12 +593,15 @@ AsyncResult.obj: \
"$(includedir)\Ice\EndpointTypes.h" \
"$(includedir)\Ice\ReferenceF.h" \
"$(includedir)\Ice\BatchRequestQueueF.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"EventHandler.h" \
"EventHandlerF.h" \
"Network.h" \
"NetworkF.h" \
"NetworkProxyF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"Selector.h" \
"$(includedir)\IceUtil\StringUtil.h" \
"Instance.h" \
@@ -603,7 +618,6 @@ AsyncResult.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"IPEndpointIF.h" \
@@ -615,7 +629,6 @@ AsyncResult.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -625,6 +638,8 @@ AsyncResult.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\Properties.h" \
@@ -682,8 +697,8 @@ BasicStream.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -708,8 +723,9 @@ BasicStream.obj: \
"$(includedir)\Ice\AsyncResultF.h" \
"$(includedir)\Ice\ObserverHelper.h" \
"$(includedir)\Ice\Instrumentation.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"Network.h" \
"NetworkF.h" \
"NetworkProxyF.h" \
@@ -741,7 +757,6 @@ BasicStream.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -751,14 +766,15 @@ BasicStream.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"ProxyFactory.h" \
"$(includedir)\Ice\OutgoingAsyncF.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "ObjectFactoryManager.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
+ "ValueFactoryManager.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"TraceUtil.h" \
"TraceLevels.h" \
"$(includedir)\Ice\LoggerUtil.h" \
@@ -812,8 +828,8 @@ BatchRequestQueue.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -846,8 +862,9 @@ BatchRequestQueue.obj: \
"$(includedir)\Ice\AsyncResultF.h" \
"$(includedir)\Ice\ObserverHelper.h" \
"$(includedir)\Ice\Instrumentation.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
@@ -863,7 +880,6 @@ BatchRequestQueue.obj: \
"$(includedir)\Ice\Plugin.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -873,6 +889,8 @@ BatchRequestQueue.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
@@ -956,6 +974,7 @@ CollocatedRequestHandler.obj: \
"$(includedir)\Ice\Version.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "VirtualShared.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\InstanceF.h" \
@@ -964,8 +983,8 @@ CollocatedRequestHandler.obj: \
"$(includedir)\Ice\Current.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -1025,6 +1044,8 @@ CollocatedRequestHandler.obj: \
"$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"Instance.h" \
"$(includedir)\Ice\InstrumentationF.h" \
@@ -1108,17 +1129,18 @@ CommunicatorI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\InstrumentationF.h" \
"$(includedir)\Ice\Dispatcher.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Plugin.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"$(includedir)\Ice\Communicator.h" \
@@ -1130,6 +1152,9 @@ CommunicatorI.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -1158,7 +1183,6 @@ CommunicatorI.obj: \
"NetworkProxyF.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Process.h" \
"ConnectionFactory.h" \
"ConnectionI.h" \
@@ -1171,6 +1195,7 @@ CommunicatorI.obj: \
"EventHandlerF.h" \
"Network.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -1182,7 +1207,7 @@ CommunicatorI.obj: \
"BatchRequestQueue.h" \
"SharedContext.h" \
"ProxyFactory.h" \
- "ObjectFactoryManager.h" \
+ "ValueFactoryManager.h" \
"ObjectAdapterFactory.h" \
"ObjectAdapterI.h" \
"$(includedir)\Ice\ObjectAdapter.h" \
@@ -1258,15 +1283,16 @@ ConnectionFactory.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"TransceiverF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"EndpointIF.h" \
@@ -1282,9 +1308,9 @@ ConnectionFactory.obj: \
"NetworkProxyF.h" \
"$(includedir)\Ice\PropertiesF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -1318,6 +1344,8 @@ ConnectionFactory.obj: \
"$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"TraceLevels.h" \
@@ -1408,15 +1436,16 @@ ConnectionI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\ConnectionFactoryF.h" \
"TransceiverF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -1433,9 +1462,9 @@ ConnectionI.obj: \
"NetworkProxyF.h" \
"$(includedir)\Ice\PropertiesF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -1466,6 +1495,8 @@ ConnectionI.obj: \
"$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\Properties.h" \
@@ -1552,13 +1583,15 @@ ConnectionRequestHandler.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"Reference.h" \
"ReferenceFactoryF.h" \
"EndpointIF.h" \
@@ -1578,8 +1611,9 @@ ConnectionRequestHandler.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"ConnectionI.h" \
"..\..\src\IceUtil\StopWatch.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -1599,8 +1633,8 @@ ConnectionRequestHandler.obj: \
"NetworkProxyF.h" \
"$(includedir)\Ice\PropertiesF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"ResponseHandler.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
"ACM.h" \
@@ -1689,13 +1723,15 @@ ConnectRequestHandler.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocatorF.h" \
"RouterInfoF.h" \
"LocatorInfoF.h" \
@@ -1711,8 +1747,9 @@ ConnectRequestHandler.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"RouterInfo.h" \
"$(includedir)\Ice\Router.h" \
"$(includedir)\Ice\Comparable.h" \
@@ -1746,7 +1783,6 @@ ConnectRequestHandler.obj: \
"$(includedir)\Ice\Plugin.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"ConnectionI.h" \
@@ -1757,6 +1793,7 @@ ConnectRequestHandler.obj: \
"EventHandlerF.h" \
"Network.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"ResponseHandler.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
"$(includedir)\Ice\Outgoing.h" \
@@ -1825,15 +1862,16 @@ DefaultsAndOverrides.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"Network.h" \
"NetworkF.h" \
"NetworkProxyF.h" \
@@ -1848,11 +1886,12 @@ DefaultsAndOverrides.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\Plugin.h" \
- "$(includedir)\Ice\LocalException.h" \
DeprecatedStringConverter.obj: \
DeprecatedStringConverter.cpp \
@@ -1920,13 +1959,14 @@ DeprecatedStringConverter.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\InstrumentationF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
@@ -1953,7 +1993,6 @@ DeprecatedStringConverter.obj: \
"NetworkProxyF.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -1963,6 +2002,8 @@ DeprecatedStringConverter.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
DispatchInterceptor.obj: \
DispatchInterceptor.cpp \
@@ -2011,8 +2052,8 @@ DispatchInterceptor.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -2118,13 +2159,14 @@ EndpointFactory.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
@@ -2140,7 +2182,6 @@ EndpointFactory.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -2150,6 +2191,8 @@ EndpointFactory.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"EndpointFactoryManager.h" \
EndpointFactoryManager.obj: \
@@ -2211,8 +2254,8 @@ EndpointFactoryManager.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -2269,6 +2312,8 @@ EndpointFactoryManager.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
@@ -2357,8 +2402,8 @@ EventHandler.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -2384,8 +2429,11 @@ EventHandler.obj: \
"$(includedir)\Ice\AsyncResultF.h" \
"$(includedir)\Ice\ObserverHelper.h" \
"$(includedir)\Ice\Instrumentation.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -2401,7 +2449,6 @@ EventHandler.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"IPEndpointIF.h" \
@@ -2414,7 +2461,6 @@ EventHandler.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -2424,6 +2470,8 @@ EventHandler.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
Exception.obj: \
Exception.cpp \
@@ -2488,8 +2536,8 @@ Exception.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -2520,7 +2568,7 @@ FactoryTable.obj: \
"$(includedir)\IceUtil\Atomic.h" \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\Config.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
@@ -2556,7 +2604,7 @@ FactoryTableInit.obj: \
"$(includedir)\IceUtil\Atomic.h" \
"$(includedir)\IceUtil\Handle.h" \
"$(includedir)\Ice\Config.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\ProxyF.h" \
"$(includedir)\Ice\ProxyHandle.h" \
@@ -2575,7 +2623,7 @@ FactoryTableInit.obj: \
"$(includedir)\IceUtil\Optional.h" \
"$(includedir)\IceUtil\UndefSysMacros.h" \
"$(includedir)\IceUtil\PopDisableWarnings.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
GCObject.obj: \
@@ -2661,8 +2709,8 @@ HttpParser.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -2717,8 +2765,8 @@ ImplicitContextI.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -2771,8 +2819,8 @@ Incoming.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -2797,10 +2845,11 @@ Incoming.obj: \
"$(includedir)\IceUtil\UniquePtr.h" \
"$(includedir)\Ice\CommunicatorF.h" \
"$(includedir)\Ice\AsyncResultF.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ServantLocator.h" \
"ServantManager.h" \
"ConnectionI.h" \
@@ -2823,9 +2872,9 @@ Incoming.obj: \
"NetworkProxyF.h" \
"$(includedir)\Ice\PropertiesF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
"ACM.h" \
@@ -2852,6 +2901,8 @@ Incoming.obj: \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\LoggerUtil.h" \
@@ -2905,8 +2956,8 @@ IncomingAsync.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -2934,8 +2985,9 @@ IncomingAsync.obj: \
"$(includedir)\Ice\BatchRequestQueueF.h" \
"$(includedir)\Ice\AsyncResult.h" \
"$(includedir)\Ice\AsyncResultF.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\ConnectionFactoryF.h" \
"TransceiverF.h" \
"EndpointIF.h" \
@@ -2951,9 +3003,9 @@ IncomingAsync.obj: \
"NetworkProxyF.h" \
"$(includedir)\Ice\PropertiesF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
"ACM.h" \
@@ -2981,6 +3033,8 @@ IncomingAsync.obj: \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"ReplyStatus.h" \
@@ -3050,17 +3104,18 @@ Initialize.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\InstrumentationF.h" \
"$(includedir)\Ice\Dispatcher.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Plugin.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"$(includedir)\Ice\Communicator.h" \
@@ -3072,6 +3127,9 @@ Initialize.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -3081,7 +3139,6 @@ Initialize.obj: \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\CommunicatorAsync.h" \
"PropertiesI.h" \
- "$(includedir)\Ice\LocalException.h" \
"StreamI.h" \
"$(includedir)\Ice\Stream.h" \
"LoggerI.h" \
@@ -3182,15 +3239,16 @@ Instance.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
@@ -3207,7 +3265,6 @@ Instance.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -3217,6 +3274,8 @@ Instance.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"TraceLevels.h" \
"DefaultsAndOverrides.h" \
"Network.h" \
@@ -3229,8 +3288,6 @@ Instance.obj: \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\Locator.h" \
"$(includedir)\Ice\IncomingAsync.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"ReferenceFactory.h" \
"Reference.h" \
"$(includedir)\Ice\RouterF.h" \
@@ -3243,6 +3300,7 @@ Instance.obj: \
"ThreadPool.h" \
"EventHandler.h" \
"EventHandlerF.h" \
+ "VirtualShared.h" \
"Selector.h" \
"$(includedir)\IceUtil\StringUtil.h" \
"ConnectionFactory.h" \
@@ -3255,7 +3313,8 @@ Instance.obj: \
"$(includedir)\Ice\ConnectionAsync.h" \
"AcceptorF.h" \
"EndpointI.h" \
- "ObjectFactoryManager.h" \
+ "ValueFactoryManager.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"ObjectAdapterFactory.h" \
"ObjectAdapterI.h" \
"$(includedir)\Ice\ObjectAdapter.h" \
@@ -3352,13 +3411,14 @@ InstrumentationI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Metrics.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
@@ -3368,7 +3428,7 @@ InstrumentationI.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\MetricsAdminI.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -3387,8 +3447,8 @@ InstrumentationI.obj: \
"$(includedir)\Ice\ObjectAdapter.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\FacetMap.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Communicator.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\PluginF.h" \
"$(includedir)\Ice\ImplicitContextF.h" \
@@ -3466,13 +3526,14 @@ IPEndpointI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
"ProtocolInstance.h" \
@@ -3501,7 +3562,6 @@ IPEndpointI.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -3511,6 +3571,8 @@ IPEndpointI.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"PropertiesI.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -3593,13 +3655,15 @@ LocatorInfo.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"EndpointIF.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\Locator.h" \
@@ -3612,10 +3676,8 @@ LocatorInfo.obj: \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Process.h" \
- "$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -3662,6 +3724,7 @@ LocatorInfo.obj: \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\Functional.h" \
"$(includedir)\IceUtil\Functional.h" \
+ "$(includedir)\Ice\Comparable.h" \
LoggerAdminI.obj: \
LoggerAdminI.cpp \
@@ -3723,20 +3786,21 @@ LoggerAdminI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Initialize.h" \
"$(includedir)\IceUtil\Timer.h" \
"$(includedir)\IceUtil\Thread.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\InstrumentationF.h" \
"$(includedir)\Ice\Dispatcher.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Plugin.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"$(includedir)\Ice\Communicator.h" \
@@ -3748,6 +3812,9 @@ LoggerAdminI.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -3756,12 +3823,9 @@ LoggerAdminI.obj: \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\RemoteLogger.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"$(includedir)\Ice\ObjectAdapter.h" \
"$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\Connection.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\LoggerUtil.h" \
LoggerI.obj: \
@@ -3884,8 +3948,8 @@ LoggerUtil.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -3915,6 +3979,8 @@ LoggerUtil.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
MetricsAdminI.obj: \
MetricsAdminI.cpp \
@@ -3975,13 +4041,15 @@ MetricsAdminI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -3990,8 +4058,9 @@ MetricsAdminI.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\NativePropertiesAdmin.h" \
"$(includedir)\Ice\Initialize.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -4003,8 +4072,6 @@ MetricsAdminI.obj: \
"$(includedir)\Ice\Plugin.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"$(includedir)\Ice\Metrics.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"InstrumentationI.h" \
"$(includedir)\Ice\MetricsObserverI.h" \
"..\..\src\IceUtil\StopWatch.h" \
@@ -4013,6 +4080,7 @@ MetricsAdminI.obj: \
"$(includedir)\Ice\MetricsFunctional.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\Communicator.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -4038,7 +4106,6 @@ MetricsAdminI.obj: \
"NetworkProxyF.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\IceUtil\StringUtil.h" \
@@ -4105,13 +4172,14 @@ MetricsObserverI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Metrics.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
@@ -4121,7 +4189,7 @@ MetricsObserverI.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\MetricsAdminI.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -4200,19 +4268,19 @@ Network.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
"NetworkProxy.h" \
"$(includedir)\IceUtil\StringUtil.h" \
- "$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"ProtocolInstance.h" \
"EndpointIF.h" \
"ConnectorF.h" \
@@ -4253,6 +4321,8 @@ Network.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
@@ -4322,18 +4392,18 @@ NetworkProxy.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
"HttpParser.h" \
- "$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
@@ -4343,6 +4413,8 @@ NetworkProxy.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
Object.obj: \
@@ -4390,8 +4462,8 @@ Object.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -4484,18 +4556,19 @@ ObjectAdapterFactory.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"$(includedir)\Ice\ConnectionFactoryF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -4511,7 +4584,6 @@ ObjectAdapterFactory.obj: \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\LoggerF.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Functional.h" \
"$(includedir)\IceUtil\Functional.h" \
"$(includedir)\IceUtil\UUID.h" \
@@ -4577,18 +4649,19 @@ ObjectAdapterI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"$(includedir)\Ice\ConnectionFactoryF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -4623,13 +4696,14 @@ ObjectAdapterI.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(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)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"ProxyFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\IncomingAsync.h" \
@@ -4652,6 +4726,7 @@ ObjectAdapterI.obj: \
"EventHandlerF.h" \
"Network.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -4663,60 +4738,18 @@ ObjectAdapterI.obj: \
"$(includedir)\IceUtil\Functional.h" \
"LocatorInfo.h" \
"$(includedir)\Ice\Locator.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"ThreadPool.h" \
"Selector.h" \
"$(includedir)\IceUtil\StringUtil.h" \
"$(includedir)\Ice\Communicator.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\ImplicitContextF.h" \
"DefaultsAndOverrides.h" \
"TraceLevels.h" \
"PropertyNames.h" \
-ObjectFactoryManager.obj: \
- ObjectFactoryManager.cpp \
- "ObjectFactoryManager.h" \
- "$(includedir)\IceUtil\Shared.h" \
- "$(includedir)\IceUtil\Config.h" \
- "$(includedir)\IceUtil\Atomic.h" \
- "$(includedir)\IceUtil\Mutex.h" \
- "$(includedir)\IceUtil\Lock.h" \
- "$(includedir)\IceUtil\ThreadException.h" \
- "$(includedir)\IceUtil\Exception.h" \
- "$(includedir)\IceUtil\Time.h" \
- "$(includedir)\IceUtil\MutexProtocol.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
- "$(includedir)\Ice\Handle.h" \
- "$(includedir)\IceUtil\Handle.h" \
- "$(includedir)\Ice\Config.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" \
- "$(includedir)\Ice\LocalObject.h" \
- "$(includedir)\Ice\LocalObjectF.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" \
- "$(includedir)\Ice\Functional.h" \
- "$(includedir)\IceUtil\Functional.h" \
- "$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
-
ObserverHelper.obj: \
ObserverHelper.cpp \
"$(includedir)\Ice\ObserverHelper.h" \
@@ -4778,13 +4811,15 @@ ObserverHelper.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocatorF.h" \
"RouterInfoF.h" \
"LocatorInfoF.h" \
@@ -4800,8 +4835,9 @@ ObserverHelper.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -4830,7 +4866,6 @@ ObserverHelper.obj: \
"$(includedir)\Ice\Plugin.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
@@ -4891,8 +4926,8 @@ OpaqueEndpointI.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -4914,12 +4949,12 @@ OpaqueEndpointI.obj: \
"$(includedir)\Ice\AsyncResultF.h" \
"$(includedir)\Ice\ObserverHelper.h" \
"$(includedir)\Ice\Instrumentation.h" \
+ "$(includedir)\Ice\LocalException.h" \
"Network.h" \
"NetworkF.h" \
"NetworkProxyF.h" \
"Base64.h" \
"HashUtil.h" \
- "$(includedir)\Ice\LocalException.h" \
Outgoing.obj: \
Outgoing.cpp \
@@ -4969,8 +5004,8 @@ Outgoing.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -4991,8 +5026,9 @@ Outgoing.obj: \
"$(includedir)\Ice\BatchRequestQueueF.h" \
"$(includedir)\Ice\AsyncResult.h" \
"$(includedir)\Ice\AsyncResultF.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\ConnectionFactoryF.h" \
"TransceiverF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5009,9 +5045,9 @@ Outgoing.obj: \
"NetworkProxyF.h" \
"$(includedir)\Ice\PropertiesF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -5034,6 +5070,8 @@ Outgoing.obj: \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
@@ -5108,8 +5146,8 @@ OutgoingAsync.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -5124,8 +5162,9 @@ OutgoingAsync.obj: \
"$(includedir)\Ice\EndpointTypes.h" \
"$(includedir)\Ice\ReferenceF.h" \
"$(includedir)\Ice\BatchRequestQueueF.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\ConnectionFactoryF.h" \
"TransceiverF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
@@ -5141,9 +5180,9 @@ OutgoingAsync.obj: \
"NetworkProxyF.h" \
"$(includedir)\Ice\PropertiesF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -5166,6 +5205,8 @@ OutgoingAsync.obj: \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
@@ -5255,13 +5296,14 @@ PluginManagerI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -5270,7 +5312,10 @@ PluginManagerI.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\InstrumentationF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -5306,7 +5351,6 @@ PluginManagerI.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Process.h" \
PropertiesAdminI.obj: \
@@ -5369,13 +5413,15 @@ PropertiesAdminI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -5384,8 +5430,9 @@ PropertiesAdminI.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\NativePropertiesAdmin.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\Logger.h" \
@@ -5451,13 +5498,15 @@ PropertiesI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -5466,8 +5515,9 @@ PropertiesI.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\IceUtil\StringUtil.h" \
"$(includedir)\IceUtil\FileUtil.h" \
"$(includedir)\Ice\Initialize.h" \
@@ -5479,11 +5529,11 @@ PropertiesI.obj: \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\Plugin.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
- "$(includedir)\Ice\LocalException.h" \
"PropertyNames.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Communicator.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -5588,13 +5638,15 @@ ProtocolInstance.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"EndpointIF.h" \
"ConnectorF.h" \
@@ -5616,7 +5668,6 @@ ProtocolInstance.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -5629,7 +5680,6 @@ ProtocolInstance.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -5639,6 +5689,8 @@ ProtocolInstance.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"IPEndpointI.h" \
"EndpointI.h" \
"TransceiverF.h" \
@@ -5724,15 +5776,16 @@ ProtocolPluginFacade.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
@@ -5748,7 +5801,6 @@ ProtocolPluginFacade.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -5758,6 +5810,8 @@ ProtocolPluginFacade.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"EndpointFactoryManager.h" \
"TraceLevels.h" \
"DefaultsAndOverrides.h" \
@@ -5821,13 +5875,15 @@ Proxy.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"ProxyFactory.h" \
"$(includedir)\Ice\OutgoingAsyncF.h" \
"$(includedir)\Ice\Properties.h" \
@@ -5839,8 +5895,9 @@ Proxy.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"ReferenceFactory.h" \
"ReferenceFactoryF.h" \
"Reference.h" \
@@ -5890,7 +5947,6 @@ Proxy.obj: \
"$(includedir)\Ice\Plugin.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Process.h" \
"RouterInfo.h" \
"$(includedir)\Ice\Router.h" \
@@ -5902,6 +5958,7 @@ Proxy.obj: \
"EventHandlerF.h" \
"Network.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -5968,13 +6025,15 @@ ProxyFactory.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -5983,8 +6042,9 @@ ProxyFactory.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -6016,7 +6076,6 @@ ProxyFactory.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"ReferenceFactory.h" \
@@ -6096,13 +6155,15 @@ Reference.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocatorF.h" \
"RouterInfoF.h" \
"LocatorInfoF.h" \
@@ -6118,10 +6179,10 @@ Reference.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"ReferenceFactory.h" \
- "$(includedir)\Ice\LocalException.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -6165,8 +6226,6 @@ Reference.obj: \
"$(includedir)\Ice\Comparable.h" \
"LocatorInfo.h" \
"$(includedir)\Ice\Locator.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"$(includedir)\Ice\Functional.h" \
"$(includedir)\IceUtil\Functional.h" \
"ConnectionI.h" \
@@ -6175,6 +6234,7 @@ Reference.obj: \
"EventHandler.h" \
"EventHandlerF.h" \
"Network.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -6248,13 +6308,15 @@ ReferenceFactory.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -6263,15 +6325,17 @@ ReferenceFactory.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\InstrumentationF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
"$(includedir)\Ice\ImplicitContextF.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\FacetMap.h" \
"ReferenceFactory.h" \
"ReferenceFactoryF.h" \
@@ -6284,7 +6348,6 @@ ReferenceFactory.obj: \
"SharedContext.h" \
"ProxyFactory.h" \
"$(includedir)\Ice\OutgoingAsyncF.h" \
- "$(includedir)\Ice\LocalException.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -6321,6 +6384,7 @@ ReferenceFactory.obj: \
"EventHandlerF.h" \
"Network.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"RequestHandler.h" \
"ResponseHandler.h" \
"$(includedir)\Ice\ConnectionAsync.h" \
@@ -6331,8 +6395,6 @@ ReferenceFactory.obj: \
"$(includedir)\Ice\Comparable.h" \
"LocatorInfo.h" \
"$(includedir)\Ice\Locator.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"DefaultsAndOverrides.h" \
@@ -6401,17 +6463,18 @@ RegisterPluginsInit.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\InstrumentationF.h" \
"$(includedir)\Ice\Dispatcher.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Plugin.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
@@ -6478,13 +6541,15 @@ RequestHandler.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LocatorF.h" \
"RouterInfoF.h" \
"LocatorInfoF.h" \
@@ -6500,8 +6565,9 @@ RequestHandler.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
RequestHandlerFactory.obj: \
RequestHandlerFactory.cpp \
@@ -6552,6 +6618,7 @@ RequestHandlerFactory.obj: \
"$(includedir)\Ice\Version.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "VirtualShared.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
@@ -6559,8 +6626,8 @@ RequestHandlerFactory.obj: \
"$(includedir)\Ice\Current.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -6597,6 +6664,8 @@ RequestHandlerFactory.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"RouterInfo.h" \
"$(includedir)\Ice\Router.h" \
@@ -6665,6 +6734,7 @@ ResponseHandler.obj: \
"$(includedir)\Ice\Version.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "VirtualShared.h" \
RetryQueue.obj: \
RetryQueue.cpp \
@@ -6726,8 +6796,8 @@ RetryQueue.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -6777,6 +6847,8 @@ RetryQueue.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"TraceLevels.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
@@ -6841,13 +6913,15 @@ RouterInfo.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -6855,10 +6929,10 @@ RouterInfo.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"EndpointIF.h" \
"$(includedir)\Ice\Comparable.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\Functional.h" \
@@ -6938,18 +7012,21 @@ Selector.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
"EventHandlerF.h" \
"EventHandler.h" \
"$(includedir)\Ice\ThreadPoolF.h" \
+ "VirtualShared.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -6965,7 +7042,6 @@ Selector.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"IPEndpointIF.h" \
@@ -6978,7 +7054,6 @@ Selector.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -6988,6 +7063,8 @@ Selector.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
@@ -7074,8 +7151,8 @@ ServantManager.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -7102,6 +7179,8 @@ ServantManager.obj: \
"$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\IceUtil\StringUtil.h" \
Service.obj: \
@@ -7128,6 +7207,7 @@ Service.obj: \
"$(includedir)\Ice\Ice.h" \
"$(includedir)\IceUtil\PushDisableWarnings.h" \
"$(includedir)\Ice\Config.h" \
+ "$(includedir)\Ice\Comparable.h" \
"$(includedir)\Ice\DeprecatedStringConverter.h" \
"$(includedir)\Ice\CommunicatorF.h" \
"$(includedir)\Ice\ProxyF.h" \
@@ -7175,17 +7255,17 @@ Service.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\InstrumentationF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
@@ -7195,13 +7275,14 @@ Service.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\RemoteLogger.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"$(includedir)\Ice\Communicator.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -7230,6 +7311,7 @@ Service.obj: \
"$(includedir)\Ice\SliceChecksums.h" \
"$(includedir)\Ice\SliceChecksumDict.h" \
"$(includedir)\Ice\RegisterPlugins.h" \
+ "$(includedir)\Ice\InterfaceByValue.h" \
"LoggerI.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
@@ -7333,8 +7415,8 @@ SlicedData.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\InstanceF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
@@ -7398,13 +7480,15 @@ Stream.obj: \
"$(includedir)\Ice\Instrumentation.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
StreamI.obj: \
StreamI.cpp \
@@ -7465,13 +7549,15 @@ StreamI.obj: \
"$(includedir)\Ice\Instrumentation.h" \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\IceUtil\StringConverter.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -7488,7 +7574,6 @@ StreamI.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
@@ -7505,7 +7590,6 @@ StreamI.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -7515,6 +7599,8 @@ StreamI.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"DefaultsAndOverrides.h" \
"Network.h" \
"ProtocolInstanceF.h" \
@@ -7581,13 +7667,15 @@ StreamSocket.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
"NetworkProxy.h" \
@@ -7611,7 +7699,6 @@ StreamSocket.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -7623,7 +7710,6 @@ StreamSocket.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -7633,6 +7719,8 @@ StreamSocket.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
StringConverterPlugin.obj: \
StringConverterPlugin.cpp \
@@ -7706,13 +7794,14 @@ StringConverterPlugin.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\Ice\Value.h" \
"$(includedir)\Ice\Incoming.h" \
@@ -7720,7 +7809,10 @@ StringConverterPlugin.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\InstrumentationF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -7732,7 +7824,6 @@ StringConverterPlugin.obj: \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\Dispatcher.h" \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
@@ -7803,13 +7894,15 @@ TcpAcceptor.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"TcpTransceiver.h" \
"Transceiver.h" \
@@ -7834,7 +7927,6 @@ TcpAcceptor.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -7846,7 +7938,6 @@ TcpAcceptor.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -7856,6 +7947,8 @@ TcpAcceptor.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"HttpParser.h" \
"TcpEndpointI.h" \
"IPEndpointI.h" \
@@ -7936,13 +8029,15 @@ TcpConnector.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"TcpTransceiver.h" \
"Transceiver.h" \
@@ -7967,7 +8062,6 @@ TcpConnector.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -7979,7 +8073,6 @@ TcpConnector.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -7989,6 +8082,8 @@ TcpConnector.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"HttpParser.h" \
"TcpEndpointI.h" \
"IPEndpointI.h" \
@@ -8073,13 +8168,14 @@ TcpEndpointI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
"EndpointFactory.h" \
@@ -8111,7 +8207,6 @@ TcpEndpointI.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -8121,6 +8216,8 @@ TcpEndpointI.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"TcpAcceptor.h" \
"Acceptor.h" \
"TcpConnector.h" \
@@ -8198,13 +8295,15 @@ TcpTransceiver.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"StreamSocket.h" \
"WSTransceiver.h" \
@@ -8227,7 +8326,6 @@ TcpTransceiver.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -8239,7 +8337,6 @@ TcpTransceiver.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -8249,6 +8346,8 @@ TcpTransceiver.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"HttpParser.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
@@ -8316,23 +8415,24 @@ ThreadPool.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"EventHandler.h" \
"EventHandlerF.h" \
"Network.h" \
"NetworkF.h" \
"NetworkProxyF.h" \
"ProtocolInstanceF.h" \
+ "VirtualShared.h" \
"Selector.h" \
"$(includedir)\IceUtil\StringUtil.h" \
- "$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -8367,6 +8467,8 @@ ThreadPool.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"ObjectAdapterFactory.h" \
@@ -8440,13 +8542,15 @@ TraceLevels.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
@@ -8456,8 +8560,9 @@ TraceLevels.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
TraceUtil.obj: \
TraceUtil.cpp \
@@ -8535,15 +8640,16 @@ TraceUtil.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\PropertiesF.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
@@ -8559,7 +8665,6 @@ TraceUtil.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -8568,6 +8673,8 @@ TraceUtil.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"TraceLevels.h" \
"$(includedir)\Ice\Logger.h" \
"ReplyStatus.h" \
@@ -8636,13 +8743,15 @@ Transceiver.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
@@ -8712,13 +8821,15 @@ UdpConnector.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstance.h" \
"EndpointIF.h" \
@@ -8739,7 +8850,6 @@ UdpConnector.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -8751,7 +8861,6 @@ UdpConnector.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -8761,6 +8870,8 @@ UdpConnector.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"UdpTransceiver.h" \
"Transceiver.h" \
"UdpEndpointI.h" \
@@ -8842,13 +8953,14 @@ UdpEndpointI.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\LoggerF.h" \
"ProtocolInstanceF.h" \
"EndpointFactory.h" \
@@ -8858,7 +8970,6 @@ UdpEndpointI.obj: \
"Connector.h" \
"UdpTransceiver.h" \
"Transceiver.h" \
- "$(includedir)\Ice\LocalException.h" \
"ProtocolInstance.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
@@ -8893,6 +9004,8 @@ UdpEndpointI.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"HashUtil.h" \
"$(includedir)\Ice\Logger.h" \
@@ -8962,13 +9075,15 @@ UdpTransceiver.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"UdpEndpointI.h" \
"IPEndpointI.h" \
@@ -8976,7 +9091,6 @@ UdpTransceiver.obj: \
"IPEndpointIF.h" \
"EndpointI.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"ConnectorF.h" \
"AcceptorF.h" \
"EndpointFactory.h" \
@@ -9007,7 +9121,6 @@ UdpTransceiver.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -9017,6 +9130,8 @@ UdpTransceiver.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\Properties.h" \
@@ -9024,6 +9139,53 @@ UdpTransceiver.obj: \
"$(includedir)\Ice\PropertiesAdmin.h" \
"$(includedir)\IceUtil\StringUtil.h" \
+ValueFactoryManager.obj: \
+ ValueFactoryManager.cpp \
+ "ValueFactoryManager.h" \
+ "$(includedir)\IceUtil\Shared.h" \
+ "$(includedir)\IceUtil\Config.h" \
+ "$(includedir)\IceUtil\Atomic.h" \
+ "$(includedir)\IceUtil\Mutex.h" \
+ "$(includedir)\IceUtil\Lock.h" \
+ "$(includedir)\IceUtil\ThreadException.h" \
+ "$(includedir)\IceUtil\Exception.h" \
+ "$(includedir)\IceUtil\Time.h" \
+ "$(includedir)\IceUtil\MutexProtocol.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
+ "$(includedir)\Ice\Handle.h" \
+ "$(includedir)\IceUtil\Handle.h" \
+ "$(includedir)\Ice\Config.h" \
+ "$(includedir)\Ice\ValueFactory.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" \
+ "$(includedir)\Ice\LocalObject.h" \
+ "$(includedir)\Ice\LocalObjectF.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" \
+ "$(includedir)\Ice\ObjectFactory.h" \
+ "$(includedir)\Ice\Object.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\Functional.h" \
+ "$(includedir)\IceUtil\Functional.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
+
WSAcceptor.obj: \
WSAcceptor.cpp \
"WSAcceptor.h" \
@@ -9091,13 +9253,15 @@ WSAcceptor.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"ProtocolInstanceF.h" \
"ProtocolInstance.h" \
"ConnectorF.h" \
@@ -9118,7 +9282,6 @@ WSAcceptor.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -9130,7 +9293,6 @@ WSAcceptor.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -9140,6 +9302,8 @@ WSAcceptor.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"WSTransceiver.h" \
"HttpParser.h" \
"Transceiver.h" \
@@ -9213,13 +9377,15 @@ WSConnector.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"EndpointIF.h" \
"IPEndpointIF.h" \
"NetworkF.h" \
@@ -9239,7 +9405,6 @@ WSConnector.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -9252,7 +9417,6 @@ WSConnector.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -9262,6 +9426,8 @@ WSConnector.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"WSTransceiver.h" \
"HttpParser.h" \
"Transceiver.h" \
@@ -9345,13 +9511,14 @@ WSEndpoint.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
"NetworkF.h" \
"Instance.h" \
"$(includedir)\IceUtil\RecMutex.h" \
@@ -9379,7 +9546,6 @@ WSEndpoint.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -9389,6 +9555,8 @@ WSEndpoint.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"WSAcceptor.h" \
"Acceptor.h" \
"Network.h" \
@@ -9459,13 +9627,15 @@ WSTransceiver.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\LoggerF.h" \
"EndpointIF.h" \
"ConnectorF.h" \
@@ -9487,7 +9657,6 @@ WSTransceiver.obj: \
"$(includedir)\Ice\ACMF.h" \
"$(includedir)\Ice\Connection.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ObjectAdapterFactoryF.h" \
"EndpointFactoryManagerF.h" \
"RetryQueueF.h" \
@@ -9500,7 +9669,6 @@ WSTransceiver.obj: \
"$(includedir)\Ice\BatchRequestInterceptor.h" \
"ImplicitContextI.h" \
"$(includedir)\Ice\ImplicitContext.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Process.h" \
"$(includedir)\Ice\GCObject.h" \
@@ -9510,12 +9678,15 @@ WSTransceiver.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"HttpParser.h" \
"Transceiver.h" \
"TransceiverF.h" \
"Network.h" \
"$(includedir)\Ice\Communicator.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\ImplicitContextF.h" \
@@ -9565,6 +9736,7 @@ DLLMain.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Service.h" \
"$(includedir)\Ice\Ice.h" \
+ "$(includedir)\Ice\Comparable.h" \
"$(includedir)\Ice\DeprecatedStringConverter.h" \
"$(includedir)\Ice\CommunicatorF.h" \
"$(includedir)\IceUtil\StringConverter.h" \
@@ -9598,8 +9770,8 @@ DLLMain.obj: \
"$(includedir)\Ice\BasicStream.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -9617,13 +9789,14 @@ DLLMain.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\Logger.h" \
"$(includedir)\Ice\LoggerUtil.h" \
"$(includedir)\Ice\RemoteLogger.h" \
- "$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
"$(includedir)\Ice\Communicator.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
@@ -9651,6 +9824,7 @@ DLLMain.obj: \
"$(includedir)\Ice\SliceChecksums.h" \
"$(includedir)\Ice\SliceChecksumDict.h" \
"$(includedir)\Ice\RegisterPlugins.h" \
+ "$(includedir)\Ice\InterfaceByValue.h" \
BuiltinSequences.obj: \
BuiltinSequences.cpp \
@@ -9694,8 +9868,8 @@ BuiltinSequences.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -9760,13 +9934,15 @@ Communicator.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -9775,17 +9951,18 @@ Communicator.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\LoggerF.h" \
"$(includedir)\Ice\InstrumentationF.h" \
+ "$(includedir)\Ice\ObjectFactory.h" \
"$(includedir)\Ice\RouterF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\PluginF.h" \
"$(includedir)\Ice\ImplicitContextF.h" \
"$(includedir)\Ice\Properties.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\FacetMap.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -9878,15 +10055,16 @@ Connection.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
- "$(includedir)\Ice\Endpoint.h" \
+ "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\Endpoint.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
"$(includedir)\IceUtil\Thread.h" \
@@ -9961,8 +10139,8 @@ Current.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10013,8 +10191,8 @@ Endpoint.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10119,8 +10297,8 @@ FacetMap.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10168,8 +10346,8 @@ Identity.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10220,8 +10398,8 @@ ImplicitContext.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10299,8 +10477,8 @@ Instrumentation.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10378,8 +10556,8 @@ LocalException.obj: \
"$(includedir)\Ice\Current.h" \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10444,13 +10622,15 @@ Locator.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -10460,10 +10640,8 @@ Locator.obj: \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Process.h" \
- "$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -10528,13 +10706,15 @@ LocatorF.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
Logger.obj: \
Logger.cpp \
@@ -10650,13 +10830,15 @@ Metrics.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -10665,9 +10847,7 @@ Metrics.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
- "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -10732,18 +10912,19 @@ ObjectAdapter.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\LocatorF.h" \
"$(includedir)\Ice\FacetMap.h" \
"$(includedir)\Ice\Endpoint.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
ObjectAdapterF.obj: \
ObjectAdapterF.cpp \
@@ -10815,7 +10996,8 @@ ObjectFactory.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10866,8 +11048,8 @@ Plugin.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -10960,13 +11142,15 @@ Process.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -10974,8 +11158,8 @@ Process.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
- "$(includedir)\Ice\LocalException.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -11040,13 +11224,15 @@ ProcessF.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
Properties.obj: \
Properties.cpp \
@@ -11106,13 +11292,15 @@ Properties.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -11121,9 +11309,9 @@ Properties.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\PropertiesAdmin.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
- "$(includedir)\Ice\LocalException.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -11188,13 +11376,15 @@ PropertiesAdmin.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -11203,8 +11393,8 @@ PropertiesAdmin.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\IncomingAsync.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
- "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -11269,13 +11459,15 @@ PropertiesF.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
RemoteLogger.obj: \
RemoteLogger.cpp \
@@ -11335,13 +11527,15 @@ RemoteLogger.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -11350,9 +11544,7 @@ RemoteLogger.obj: \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
"$(includedir)\Ice\FactoryTableInit.h" \
- "$(includedir)\Ice\DefaultObjectFactory.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
- "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -11417,13 +11609,15 @@ Router.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
"$(includedir)\Ice\GCObject.h" \
"$(includedir)\IceUtil\MutexPtrLock.h" \
"$(includedir)\Ice\Value.h" \
@@ -11431,8 +11625,8 @@ Router.obj: \
"$(includedir)\Ice\ServantLocatorF.h" \
"$(includedir)\Ice\ServantManagerF.h" \
"$(includedir)\Ice\ResponseHandlerF.h" \
- "$(includedir)\Ice\BuiltinSequences.h" \
- "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\FactoryTableInit.h" \
+ "$(includedir)\Ice\DefaultValueFactory.h" \
"$(includedir)\Ice\Outgoing.h" \
"$(includedir)\Ice\OutgoingAsync.h" \
"$(includedir)\IceUtil\Timer.h" \
@@ -11497,13 +11691,15 @@ RouterF.obj: \
"$(includedir)\IceUtil\StringConverter.h" \
"$(includedir)\Ice\Object.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
"$(includedir)\Ice\UserExceptionFactory.h" \
"$(includedir)\Ice\FactoryTable.h" \
+ "$(includedir)\Ice\LocalException.h" \
+ "$(includedir)\Ice\BuiltinSequences.h" \
ServantLocator.obj: \
ServantLocator.cpp \
@@ -11547,8 +11743,8 @@ ServantLocator.obj: \
"$(includedir)\IceUtil\Time.h" \
"$(includedir)\IceUtil\MutexProtocol.h" \
"$(includedir)\Ice\IncomingAsyncF.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -11625,8 +11821,57 @@ SliceChecksumDict.obj: \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
"$(includedir)\Ice\Version.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
+ "$(includedir)\Ice\Buffer.h" \
+ "$(includedir)\Ice\Protocol.h" \
+ "$(includedir)\Ice\SlicedDataF.h" \
+ "$(includedir)\Ice\UserExceptionFactory.h" \
+ "$(includedir)\Ice\FactoryTable.h" \
+
+ValueFactory.obj: \
+ ValueFactory.cpp \
+ "$(includedir)\Ice\ValueFactory.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\ValueF.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)\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\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
@@ -11674,8 +11919,8 @@ Version.obj: \
"$(includedir)\Ice\ObjectAdapterF.h" \
"$(includedir)\Ice\ConnectionF.h" \
"$(includedir)\Ice\Identity.h" \
- "$(includedir)\Ice\ObjectFactory.h" \
- "$(includedir)\Ice\ObjectFactoryManagerF.h" \
+ "$(includedir)\Ice\ValueFactory.h" \
+ "$(includedir)\Ice\ValueFactoryManagerF.h" \
"$(includedir)\Ice\Buffer.h" \
"$(includedir)\Ice\Protocol.h" \
"$(includedir)\Ice\SlicedDataF.h" \
diff --git a/cpp/src/Ice/.gitignore b/cpp/src/Ice/.gitignore
index abeb5e2cf37..39ff616d0f3 100644
--- a/cpp/src/Ice/.gitignore
+++ b/cpp/src/Ice/.gitignore
@@ -39,6 +39,7 @@ Router.cpp
ServantLocatorF.cpp
ServantLocator.cpp
SliceChecksumDict.cpp
+ValueFactory.cpp
Version.cpp
BuiltinSequences.h
CommunicatorF.h
diff --git a/cpp/src/Ice/BasicStream.cpp b/cpp/src/Ice/BasicStream.cpp
index d60a31abc54..7dabb6cd7e4 100644
--- a/cpp/src/Ice/BasicStream.cpp
+++ b/cpp/src/Ice/BasicStream.cpp
@@ -14,8 +14,8 @@
#include <Ice/Object.h>
#include <Ice/Proxy.h>
#include <Ice/ProxyFactory.h>
-#include <Ice/ObjectFactory.h>
-#include <Ice/ObjectFactoryManager.h>
+#include <Ice/ValueFactory.h>
+#include <Ice/ValueFactoryManager.h>
#include <Ice/UserExceptionFactory.h>
#include <Ice/LocalException.h>
#include <Ice/Protocol.h>
@@ -1855,7 +1855,7 @@ IceInternal::BasicStream::initReadEncaps()
if(!_currentReadEncaps->decoder) // Lazy initialization.
{
- ObjectFactoryManagerPtr factoryManager = _instance->servantFactoryManager();
+ ValueFactoryManagerPtr factoryManager = _instance->servantFactoryManager();
if(_currentReadEncaps->encoding == Encoding_1_0)
{
_currentReadEncaps->decoder = new EncapsDecoder10(this, _currentReadEncaps, _sliceObjects, factoryManager);
@@ -1931,7 +1931,7 @@ IceInternal::BasicStream::EncapsDecoder::newInstance(const string& typeId)
v = userFactory(typeId);
}
#else
- ObjectFactoryPtr userFactory = _servantFactoryManager->find(typeId);
+ ValueFactoryPtr userFactory = _servantFactoryManager->find(typeId);
if(userFactory)
{
v = userFactory->create(typeId);
@@ -1961,14 +1961,14 @@ IceInternal::BasicStream::EncapsDecoder::newInstance(const string& typeId)
if(!v)
{
#ifdef ICE_CPP11_MAPPING
- function<ValuePtr (const string&)> of = IceInternal::factoryTable->getObjectFactory(typeId);
+ function<ValuePtr (const string&)> of = IceInternal::factoryTable->getValueFactory(typeId);
if(of)
{
v = of(typeId);
assert(v);
}
#else
- ObjectFactoryPtr of = IceInternal::factoryTable->getObjectFactory(typeId);
+ ValueFactoryPtr of = IceInternal::factoryTable->getValueFactory(typeId);
if(of)
{
v = of->create(typeId);
@@ -2382,7 +2382,7 @@ IceInternal::BasicStream::EncapsDecoder10::readInstance()
//
if(_typeId == Object::ice_staticId())
{
- throw NoObjectFactoryException(__FILE__, __LINE__, "", mostDerivedId);
+ throw NoValueFactoryException(__FILE__, __LINE__, "", mostDerivedId);
}
v = newInstance(_typeId);
@@ -2400,7 +2400,7 @@ IceInternal::BasicStream::EncapsDecoder10::readInstance()
//
if(!_sliceObjects)
{
- throw NoObjectFactoryException(__FILE__, __LINE__, "no object factory found and object slicing is disabled",
+ throw NoValueFactoryException(__FILE__, __LINE__, "no value factory found and object slicing is disabled",
_typeId);
}
@@ -2700,8 +2700,8 @@ IceInternal::BasicStream::EncapsDecoder11::skipSlice()
{
if(_current->sliceType == ObjectSlice)
{
- throw NoObjectFactoryException(__FILE__, __LINE__,
- "no object factory found and compact format prevents "
+ throw NoValueFactoryException(__FILE__, __LINE__,
+ "no value factory found and compact format prevents "
"slicing (the sender should use the sliced format instead)",
_current->typeId);
}
@@ -2867,7 +2867,7 @@ IceInternal::BasicStream::EncapsDecoder11::readInstance(Int index, PatchFunc pat
//
if(!_sliceObjects)
{
- throw NoObjectFactoryException(__FILE__, __LINE__, "no object factory found and object slicing is disabled",
+ throw NoValueFactoryException(__FILE__, __LINE__, "no value factory found and object slicing is disabled",
_current->typeId);
}
diff --git a/cpp/src/Ice/CommunicatorI.cpp b/cpp/src/Ice/CommunicatorI.cpp
index 4fddd5e9e62..a4ef7486333 100644
--- a/cpp/src/Ice/CommunicatorI.cpp
+++ b/cpp/src/Ice/CommunicatorI.cpp
@@ -13,7 +13,7 @@
#include <Ice/ConnectionFactory.h>
#include <Ice/ReferenceFactory.h>
#include <Ice/ProxyFactory.h>
-#include <Ice/ObjectFactoryManager.h>
+#include <Ice/ValueFactoryManager.h>
#include <Ice/ObjectAdapterFactory.h>
#include <Ice/LoggerUtil.h>
#include <Ice/LocalException.h>
@@ -129,27 +129,39 @@ Ice::CommunicatorI::createObjectAdapterWithRouter(const string& name, const Rout
return _instance->objectAdapterFactory()->createObjectAdapter(oaName, router);
}
+void
+Ice::CommunicatorI::addObjectFactory(const ::Ice::ObjectFactoryPtr& factory, const string& id)
+{
+ _instance->servantFactoryManager()->add(factory, id);
+}
+
+::Ice::ObjectFactoryPtr
+Ice::CommunicatorI::findObjectFactory(const string& id) const
+{
+ return _instance->servantFactoryManager()->findObjectFactory(id);
+}
+
#ifdef ICE_CPP11_MAPPING
void
-Ice::CommunicatorI::addObjectFactory(function<::Ice::ValuePtr (const string&)> factory, const string& id)
+Ice::CommunicatorI::addValueFactory(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
+Ice::CommunicatorI::findValueFactory(const string& id) const
{
return _instance->servantFactoryManager()->find(id);
}
#else
void
-Ice::CommunicatorI::addObjectFactory(const ::Ice::ObjectFactoryPtr& factory, const string& id)
+Ice::CommunicatorI::addValueFactory(const ::Ice::ValueFactoryPtr& factory, const string& id)
{
_instance->servantFactoryManager()->add(factory, id);
}
-::Ice::ObjectFactoryPtr
-Ice::CommunicatorI::findObjectFactory(const string& id) const
+::Ice::ValueFactoryPtr
+Ice::CommunicatorI::findValueFactory(const string& id) const
{
return _instance->servantFactoryManager()->find(id);
}
@@ -243,16 +255,16 @@ Ice::CommunicatorI::flushBatchRequests_async(
class FlushBatchRequestsCallback : public CallbackBase
{
public:
-
+
FlushBatchRequestsCallback(function<void (exception_ptr)> exception,
- function<void (bool)> sent,
+ 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
@@ -264,19 +276,19 @@ Ice::CommunicatorI::flushBatchRequests_async(
{
_exception(current_exception());
}
-
+
if(_sent)
{
_sent(result->sentSynchronously());
}
}
-
+
virtual bool hasSentCallback() const
{
return true;
}
-
+
virtual void
completed(const ::Ice::AsyncResultPtr& result) const
{
@@ -297,15 +309,15 @@ Ice::CommunicatorI::flushBatchRequests_async(
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);
diff --git a/cpp/src/Ice/CommunicatorI.h b/cpp/src/Ice/CommunicatorI.h
index d0ba4285695..277d573b04b 100644
--- a/cpp/src/Ice/CommunicatorI.h
+++ b/cpp/src/Ice/CommunicatorI.h
@@ -46,12 +46,15 @@ public:
virtual ObjectAdapterPtr createObjectAdapterWithEndpoints(const std::string&, const std::string&);
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;
+
+#ifdef ICE_CPP11_MAPPING
+ virtual void addValueFactory(std::function<std::shared_ptr<Ice::Value> (const std::string&)>, const std::string&);
+ virtual std::function<::std::shared_ptr<Ice::Value> (const std::string&)> findValueFactory(const std::string&) const;
+#else
+ virtual void addValueFactory(const ValueFactoryPtr&, const std::string&);
+ virtual ValueFactoryPtr findValueFactory(const std::string&) const;
#endif
virtual ImplicitContextPtr getImplicitContext() const;
diff --git a/cpp/src/Ice/Exception.cpp b/cpp/src/Ice/Exception.cpp
index d23255ef4ab..20203c94d52 100644
--- a/cpp/src/Ice/Exception.cpp
+++ b/cpp/src/Ice/Exception.cpp
@@ -70,13 +70,13 @@ throwUOE(const string& expectedType, const ValuePtr& v)
{
//
// If the object is an unknown sliced object, we didn't find an
- // object factory, in this case raise a NoObjectFactoryException
+ // value factory, in this case raise a NoValueFactoryException
// instead.
//
UnknownSlicedObject* uso = dynamic_cast<UnknownSlicedObject*>(v.get());
if(uso)
{
- throw NoObjectFactoryException(__FILE__, __LINE__, "", uso->getUnknownTypeId());
+ throw NoValueFactoryException(__FILE__, __LINE__, "", uso->getUnknownTypeId());
}
string type = v->ice_id();
@@ -698,7 +698,7 @@ Ice::UnmarshalOutOfBoundsException::ice_print(ostream& out) const
}
void
-Ice::NoObjectFactoryException::ice_print(ostream& out) const
+Ice::NoValueFactoryException::ice_print(ostream& out) const
{
Exception::ice_print(out);
out << ":\nprotocol error: no suitable object factory found for `" << type << "'";
diff --git a/cpp/src/Ice/FactoryTable.cpp b/cpp/src/Ice/FactoryTable.cpp
index bc48ab8d6e9..680f19aa241 100644
--- a/cpp/src/Ice/FactoryTable.cpp
+++ b/cpp/src/Ice/FactoryTable.cpp
@@ -8,7 +8,7 @@
// **********************************************************************
#include <Ice/FactoryTable.h>
-#include <Ice/ObjectFactory.h>
+#include <Ice/ValueFactory.h>
using namespace std;
@@ -64,22 +64,22 @@ IceInternal::FactoryTable::removeExceptionFactory(const string& t)
}
//
-// Add a factory to the object factory table.
+// Add a factory to the value factory table.
//
#ifdef ICE_CPP11_MAPPING
void
-IceInternal::FactoryTable::addObjectFactory(const string& t, function<::Ice::ValuePtr (const string&)> f)
+IceInternal::FactoryTable::addValueFactory(const string& t, function<::Ice::ValuePtr (const string&)> f)
#else
void
-IceInternal::FactoryTable::addObjectFactory(const string& t, const ::Ice::ObjectFactoryPtr& f)
+IceInternal::FactoryTable::addValueFactory(const string& t, const ::Ice::ValueFactoryPtr& f)
#endif
{
IceUtil::Mutex::Lock lock(_m);
assert(f);
- OFTable::iterator i = _oft.find(t);
- if(i == _oft.end())
+ VFTable::iterator i = _vft.find(t);
+ if(i == _vft.end())
{
- _oft[t] = OFPair(f, 1);
+ _vft[t] = VFPair(f, 1);
}
else
{
@@ -88,48 +88,48 @@ IceInternal::FactoryTable::addObjectFactory(const string& t, const ::Ice::Object
}
//
-// Return the object factory for a given type ID
+// Return the value factory for a given type ID
//
#ifdef ICE_CPP11_MAPPING
function<Ice::ValuePtr(const string&)>
-IceInternal::FactoryTable::getObjectFactory(const string& t) const
+IceInternal::FactoryTable::getValueFactory(const string& t) const
{
IceUtil::Mutex::Lock lock(_m);
- OFTable::const_iterator i = _oft.find(t);
- return i != _oft.end() ? i->second.first : nullptr;
+ VFTable::const_iterator i = _vft.find(t);
+ return i != _vft.end() ? i->second.first : nullptr;
}
#else
-Ice::ObjectFactoryPtr
-IceInternal::FactoryTable::getObjectFactory(const string& t) const
+Ice::ValueFactoryPtr
+IceInternal::FactoryTable::getValueFactory(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();
+ VFTable::const_iterator i = _vft.find(t);
+ return i != _vft.end() ? i->second.first : Ice::ValueFactoryPtr();
}
#endif
//
-// Remove a factory from the object factory table. If the factory
+// Remove a factory from the value factory table. If the factory
// is not present, do nothing; otherwise, decrement the factory's
// reference count if the count drops to zero, remove the factory's
// entry from the table.
//
void
-IceInternal::FactoryTable::removeObjectFactory(const string& t)
+IceInternal::FactoryTable::removeValueFactory(const string& t)
{
IceUtil::Mutex::Lock lock(_m);
- OFTable::iterator i = _oft.find(t);
- if(i != _oft.end())
+ VFTable::iterator i = _vft.find(t);
+ if(i != _vft.end())
{
if(--i->second.second == 0)
{
- _oft.erase(i);
+ _vft.erase(i);
}
}
}
//
-// Add a factory to the object factory table.
+// Add a factory to the value factory table.
//
void
IceInternal::FactoryTable::addTypeId(int compactId, const string& typeId)
diff --git a/cpp/src/Ice/FactoryTableInit.cpp b/cpp/src/Ice/FactoryTableInit.cpp
index 9b1675e17c4..c440e35134d 100644
--- a/cpp/src/Ice/FactoryTableInit.cpp
+++ b/cpp/src/Ice/FactoryTableInit.cpp
@@ -90,6 +90,6 @@ IceInternal::CompactIdInit::CompactIdInit(const char* typeId, int compactId) :
IceInternal::CompactIdInit::~CompactIdInit()
{
- factoryTable->removeTypeId(_compactId);
+ factoryTable->removeTypeId(_compactId);
}
diff --git a/cpp/src/Ice/Instance.cpp b/cpp/src/Ice/Instance.cpp
index f3f8e2d768d..4952c61d152 100644
--- a/cpp/src/Ice/Instance.cpp
+++ b/cpp/src/Ice/Instance.cpp
@@ -18,7 +18,7 @@
#include <Ice/ProxyFactory.h>
#include <Ice/ThreadPool.h>
#include <Ice/ConnectionFactory.h>
-#include <Ice/ObjectFactoryManager.h>
+#include <Ice/ValueFactoryManager.h>
#include <Ice/LocalException.h>
#include <Ice/ObjectAdapterFactory.h>
#include <Ice/Exception.h>
@@ -396,7 +396,7 @@ IceInternal::Instance::outgoingConnectionFactory() const
return _outgoingConnectionFactory;
}
-ObjectFactoryManagerPtr
+ValueFactoryManagerPtr
IceInternal::Instance::servantFactoryManager() const
{
Lock sync(*this);
@@ -1351,7 +1351,7 @@ IceInternal::Instance::Instance(const CommunicatorPtr& communicator, const Initi
_outgoingConnectionFactory = new OutgoingConnectionFactory(communicator, this);
- _servantFactoryManager = new ObjectFactoryManager();
+ _servantFactoryManager = new ValueFactoryManager();
_objectAdapterFactory = ICE_MAKE_SHARED(ObjectAdapterFactory, this, communicator);
diff --git a/cpp/src/Ice/Instance.h b/cpp/src/Ice/Instance.h
index 32685e2e9b5..2f352cc61dd 100644
--- a/cpp/src/Ice/Instance.h
+++ b/cpp/src/Ice/Instance.h
@@ -28,7 +28,7 @@
#include <Ice/ThreadPoolF.h>
#include <Ice/ConnectionFactoryF.h>
#include <Ice/ACM.h>
-#include <Ice/ObjectFactoryManagerF.h>
+#include <Ice/ValueFactoryManagerF.h>
#include <Ice/ObjectAdapterFactoryF.h>
#include <Ice/EndpointFactoryManagerF.h>
#include <Ice/IPEndpointIF.h>
@@ -95,7 +95,7 @@ public:
RequestHandlerFactoryPtr requestHandlerFactory() const;
ProxyFactoryPtr proxyFactory() const;
OutgoingConnectionFactoryPtr outgoingConnectionFactory() const;
- ObjectFactoryManagerPtr servantFactoryManager() const;
+ ValueFactoryManagerPtr servantFactoryManager() const;
ObjectAdapterFactoryPtr objectAdapterFactory() const;
ProtocolSupport protocolSupport() const;
bool preferIPv6() const;
@@ -179,7 +179,7 @@ private:
RequestHandlerFactoryPtr _requestHandlerFactory;
ProxyFactoryPtr _proxyFactory;
OutgoingConnectionFactoryPtr _outgoingConnectionFactory;
- ObjectFactoryManagerPtr _servantFactoryManager;
+ ValueFactoryManagerPtr _servantFactoryManager;
ObjectAdapterFactoryPtr _objectAdapterFactory;
ProtocolSupport _protocolSupport;
bool _preferIPv6;
diff --git a/cpp/src/Ice/Makefile b/cpp/src/Ice/Makefile
index 6260ba1a674..1312c5d4234 100644
--- a/cpp/src/Ice/Makefile
+++ b/cpp/src/Ice/Makefile
@@ -51,6 +51,7 @@ SLICE_OBJS = BuiltinSequences.o \
ServantLocator.o \
ServantLocatorF.o \
SliceChecksumDict.o \
+ ValueFactory.o \
Version.o
OBJS = Acceptor.o \
@@ -100,7 +101,6 @@ OBJS = Acceptor.o \
Object.o \
ObjectAdapterFactory.o \
ObjectAdapterI.o \
- ObjectFactoryManager.o \
ObserverHelper.o \
OpaqueEndpointI.o \
Outgoing.o \
@@ -142,6 +142,7 @@ OBJS = Acceptor.o \
UdpEndpointI.o \
UdpTransceiver.o \
Value.o \
+ ValueFactoryManager.o \
WSAcceptor.o \
WSConnector.o \
WSEndpoint.o \
@@ -196,4 +197,4 @@ install:: all
$(call installlib,$(DESTDIR)$(install_libdir),$(libdir),$(LIBFILENAME),$(SONAME),$(LIBNAME))
ifeq ($(UNAME),MINGW)
$(call installlib,$(DESTDIR)$(install_libdir),$(BZIP2_HOME)/build/native/bin/$(PLATFORM),bzip2_mingw.dll,,)
-endif \ No newline at end of file
+endif
diff --git a/cpp/src/Ice/Makefile.mak b/cpp/src/Ice/Makefile.mak
index db8cddc15ff..f291fa2674a 100644
--- a/cpp/src/Ice/Makefile.mak
+++ b/cpp/src/Ice/Makefile.mak
@@ -51,7 +51,7 @@ SLICE_OBJS = .\BuiltinSequences.obj \
.\ServantLocator.obj \
.\ServantLocatorF.obj \
.\SliceChecksumDict.obj \
- .\Value.obj \
+ .\ValueFactory.obj \
.\Version.obj
WINDOWS_OBJS = .\DLLMain.obj
@@ -103,7 +103,6 @@ OBJS = .\Acceptor.obj \
.\Object.obj \
.\ObjectAdapterFactory.obj \
.\ObjectAdapterI.obj \
- .\ObjectFactoryManager.obj \
.\ObserverHelper.obj \
.\OpaqueEndpointI.obj \
.\Outgoing.obj \
@@ -145,6 +144,7 @@ OBJS = .\Acceptor.obj \
.\UdpConnector.obj \
.\UdpEndpointI.obj \
.\UdpTransceiver.obj \
+ .\ValueFactoryManager.obj \
.\WSAcceptor.obj \
.\WSConnector.obj \
.\WSEndpoint.obj \
diff --git a/cpp/src/Ice/ObjectFactoryManager.cpp b/cpp/src/Ice/ObjectFactoryManager.cpp
deleted file mode 100644
index d09ad32afe1..00000000000
--- a/cpp/src/Ice/ObjectFactoryManager.cpp
+++ /dev/null
@@ -1,147 +0,0 @@
-
-// **********************************************************************
-//
-// 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/ObjectFactoryManager.h>
-#include <Ice/ObjectFactory.h>
-#include <Ice/Functional.h>
-#include <Ice/LocalException.h>
-using namespace std;
-using namespace Ice;
-using namespace IceInternal;
-
-IceUtil::Shared* IceInternal::upCast(ObjectFactoryManager* p) { return p; }
-
-void
-IceInternal::ObjectFactoryManager::add(const ICE_OBJECT_FACTORY& factory, const string& id)
-{
- IceUtil::Mutex::Lock sync(*this);
-
- if((_factoryMapHint != _factoryMap.end() && _factoryMapHint->first == id)
- || _factoryMap.find(id) != _factoryMap.end())
- {
- AlreadyRegisteredException ex(__FILE__, __LINE__);
- ex.kindOfObject = "object factory";
- ex.id = id;
- throw ex;
- }
-
- _factoryMapHint = _factoryMap.insert(_factoryMapHint, pair<const string, ICE_OBJECT_FACTORY>(id, factory));
-}
-
-void
-IceInternal::ObjectFactoryManager::remove(const string& id)
-{
- ICE_OBJECT_FACTORY factory = ICE_NULLPTR;
- {
- IceUtil::Mutex::Lock sync(*this);
-
- FactoryMap::iterator p = _factoryMap.end();
- if(_factoryMapHint != _factoryMap.end())
- {
- if(_factoryMapHint->first == id)
- {
- p = _factoryMapHint;
- }
- }
-
- if(p == _factoryMap.end())
- {
- p = _factoryMap.find(id);
- if(p == _factoryMap.end())
- {
- NotRegisteredException ex(__FILE__, __LINE__);
- ex.kindOfObject = "object factory";
- ex.id = id;
- throw ex;
- }
- }
- assert(p != _factoryMap.end());
-
- factory = p->second;
-
- if(p == _factoryMapHint)
- {
- _factoryMap.erase(p++);
- _factoryMapHint = p;
- }
- else
- {
- _factoryMap.erase(p);
- }
- }
-
- //
- // Destroy outside the lock
- //
- assert(factory != 0);
-#ifndef ICE_CPP11_MAPPING
- factory->destroy();
-#endif
-}
-
-ICE_OBJECT_FACTORY
-IceInternal::ObjectFactoryManager::find(const string& id) const
-{
- IceUtil::Mutex::Lock sync(*this);
-
- FactoryMap& factoryMap = const_cast<FactoryMap&>(_factoryMap);
-
- FactoryMap::iterator p = factoryMap.end();
- if(_factoryMapHint != factoryMap.end())
- {
- if(_factoryMapHint->first == id)
- {
- p = _factoryMapHint;
- }
- }
-
- if(p == factoryMap.end())
- {
- p = factoryMap.find(id);
- }
-
- if(p != factoryMap.end())
- {
- _factoryMapHint = p;
- return p->second;
- }
- else
- {
- return ICE_NULLPTR;
- }
-}
-
-IceInternal::ObjectFactoryManager::ObjectFactoryManager() :
- _factoryMapHint(_factoryMap.end())
-{
-}
-
-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);
- oldMap.swap(_factoryMap);
- _factoryMapHint = _factoryMap.end();
- }
-
- //
- // Destroy all outside lock
- //
- 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
deleted file mode 100644
index c102d276c2c..00000000000
--- a/cpp/src/Ice/ObjectFactoryManager.h
+++ /dev/null
@@ -1,43 +0,0 @@
-// **********************************************************************
-//
-// 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_OBJECT_FACTORY_MANAGER_H
-#define ICE_OBJECT_FACTORY_MANAGER_H
-
-#include <IceUtil/Shared.h>
-#include <IceUtil/Mutex.h>
-#include <Ice/ObjectFactoryManagerF.h>
-#include <Ice/ObjectFactory.h>
-
-namespace IceInternal
-{
-
-class ObjectFactoryManager : public ::IceUtil::Shared, public ::IceUtil::Mutex
-{
-public:
-
- 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&);
-
-private:
-
- ObjectFactoryManager();
- void destroy();
- friend class Instance;
-
- FactoryMap _factoryMap;
- mutable FactoryMap::iterator _factoryMapHint;
-};
-
-}
-
-#endif
diff --git a/cpp/src/Ice/ValueFactoryManager.cpp b/cpp/src/Ice/ValueFactoryManager.cpp
new file mode 100644
index 00000000000..6a5b534e14c
--- /dev/null
+++ b/cpp/src/Ice/ValueFactoryManager.cpp
@@ -0,0 +1,175 @@
+
+// **********************************************************************
+//
+// 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/ValueFactoryManager.h>
+#include <Ice/ValueFactory.h>
+#include <Ice/ObjectFactory.h>
+#include <Ice/Object.h>
+#include <Ice/Functional.h>
+#include <Ice/LocalException.h>
+
+using namespace std;
+using namespace Ice;
+using namespace IceInternal;
+
+IceUtil::Shared* IceInternal::upCast(ValueFactoryManager* p) { return p; }
+
+#ifndef ICE_CPP11_MAPPING
+IceUtil::Shared* IceInternal::upCast(ValueFactoryWrapper* p) { return p; }
+
+ValueFactoryWrapper::ValueFactoryWrapper(const Ice::ObjectFactoryPtr& factory) : _objectFactory(factory)
+{
+}
+
+Ice::ValuePtr
+ValueFactoryWrapper::create(const string& id)
+{
+ return _objectFactory->create(id);
+}
+#endif
+
+void
+IceInternal::ValueFactoryManager::add(const ICE_VALUE_FACTORY& factory, const string& id)
+{
+ IceUtil::Mutex::Lock sync(*this);
+
+ if((_factoryMapHint != _factoryMap.end() && _factoryMapHint->first == id)
+ || _factoryMap.find(id) != _factoryMap.end())
+ {
+ AlreadyRegisteredException ex(__FILE__, __LINE__);
+ ex.kindOfObject = "value factory";
+ ex.id = id;
+ throw ex;
+ }
+
+ _factoryMapHint = _factoryMap.insert(_factoryMapHint, pair<const string, ICE_VALUE_FACTORY>(id, factory));
+}
+
+void
+IceInternal::ValueFactoryManager::add(const Ice::ObjectFactoryPtr& factory, const string& id)
+{
+ IceUtil::Mutex::Lock sync(*this);
+
+ // Check value factory map since an object factory is added to both object
+ // and value factory maps, but not vise versa
+ if((_factoryMapHint != _factoryMap.end() && _factoryMapHint->first == id)
+ || _factoryMap.find(id) != _factoryMap.end())
+ {
+ AlreadyRegisteredException ex(__FILE__, __LINE__);
+ ex.kindOfObject = "value factory";
+ ex.id = id;
+ throw ex;
+ }
+
+#ifdef ICE_CPP11_MAPPING
+ _factoryMapHint = _factoryMap.insert(_factoryMapHint,
+ pair<const string, ICE_VALUE_FACTORY>(id,
+ [factory](const string& id)
+ {
+ return factory->create(id);
+ }
+ ));
+#else
+ _factoryMapHint = _factoryMap.insert(_factoryMapHint,
+ pair<const string, ICE_VALUE_FACTORY>(id, new ValueFactoryWrapper(factory)));
+#endif
+
+ _objectFactoryMapHint = _objectFactoryMap.insert(_objectFactoryMapHint,
+ pair<const string, Ice::ObjectFactoryPtr>(id, factory));
+}
+
+ICE_VALUE_FACTORY
+IceInternal::ValueFactoryManager::find(const string& id) const
+{
+ IceUtil::Mutex::Lock sync(*this);
+
+ FactoryMap& factoryMap = const_cast<FactoryMap&>(_factoryMap);
+
+ FactoryMap::iterator p = factoryMap.end();
+ if(_factoryMapHint != factoryMap.end())
+ {
+ if(_factoryMapHint->first == id)
+ {
+ p = _factoryMapHint;
+ }
+ }
+
+ if(p == factoryMap.end())
+ {
+ p = factoryMap.find(id);
+ }
+
+ if(p != factoryMap.end())
+ {
+ _factoryMapHint = p;
+ return p->second;
+ }
+ else
+ {
+ return ICE_NULLPTR;
+ }
+}
+
+Ice::ObjectFactoryPtr
+IceInternal::ValueFactoryManager::findObjectFactory(const string& id) const
+{
+ IceUtil::Mutex::Lock sync(*this);
+
+ ObjectFactoryMap& objectfactoryMap = const_cast<ObjectFactoryMap&>(_objectFactoryMap);
+
+ ObjectFactoryMap::iterator p = objectfactoryMap.end();
+ if(_objectFactoryMapHint != objectfactoryMap.end())
+ {
+ if(_objectFactoryMapHint->first == id)
+ {
+ p = _objectFactoryMapHint;
+ }
+ }
+
+ if(p == objectfactoryMap.end())
+ {
+ p = objectfactoryMap.find(id);
+ }
+
+ if(p != objectfactoryMap.end())
+ {
+ _objectFactoryMapHint = p;
+ return p->second;
+ }
+ else
+ {
+ return ICE_NULLPTR;
+ }
+}
+
+IceInternal::ValueFactoryManager::ValueFactoryManager() :
+ _factoryMapHint(_factoryMap.end()),
+ _objectFactoryMapHint(_objectFactoryMap.end())
+{
+}
+
+void
+IceInternal::ValueFactoryManager::destroy()
+{
+ ObjectFactoryMap oldMap;
+ {
+ IceUtil::Mutex::Lock sync(*this);
+ _factoryMap.clear();
+ _factoryMapHint = _factoryMap.end();
+ oldMap.swap(_objectFactoryMap);
+ _objectFactoryMapHint = _objectFactoryMap.end();
+ }
+
+ //
+ // Destroy all outside lock
+ //
+ for_each(oldMap.begin(), oldMap.end(),
+ Ice::secondVoidMemFun<const string, Ice::ObjectFactory>(&Ice::ObjectFactory::destroy));
+}
diff --git a/cpp/src/Ice/ValueFactoryManager.h b/cpp/src/Ice/ValueFactoryManager.h
new file mode 100644
index 00000000000..31b37c9014e
--- /dev/null
+++ b/cpp/src/Ice/ValueFactoryManager.h
@@ -0,0 +1,61 @@
+// **********************************************************************
+//
+// 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_VALUE_FACTORY_MANAGER_H
+#define ICE_VALUE_FACTORY_MANAGER_H
+
+#include <IceUtil/Shared.h>
+#include <IceUtil/Mutex.h>
+#include <Ice/ValueFactoryManagerF.h>
+#include <Ice/ValueFactory.h>
+#include <Ice/ObjectFactory.h>
+
+namespace IceInternal
+{
+
+#ifndef ICE_CPP11_MAPPING
+class ValueFactoryWrapper: public Ice::ValueFactory
+{
+public:
+ ValueFactoryWrapper(const Ice::ObjectFactoryPtr& factory);
+
+ Ice::ValuePtr create(const std::string& id);
+
+private:
+ Ice::ObjectFactoryPtr _objectFactory;
+};
+#endif
+
+class ValueFactoryManager : public ::IceUtil::Shared, public ::IceUtil::Mutex
+{
+public:
+
+ void add(const ICE_VALUE_FACTORY&, const std::string&);
+ void add(const Ice::ObjectFactoryPtr&, const std::string&);
+ ICE_VALUE_FACTORY find(const std::string&) const;
+ Ice::ObjectFactoryPtr findObjectFactory(const std::string&) const;
+ typedef std::map<std::string, ICE_VALUE_FACTORY> FactoryMap;
+ typedef std::map<std::string, Ice::ObjectFactoryPtr> ObjectFactoryMap;
+
+private:
+
+ ValueFactoryManager();
+ void destroy();
+ friend class Instance;
+
+ FactoryMap _factoryMap;
+ mutable FactoryMap::iterator _factoryMapHint;
+
+ ObjectFactoryMap _objectFactoryMap;
+ mutable ObjectFactoryMap::iterator _objectFactoryMapHint;
+};
+
+}
+
+#endif
diff --git a/cpp/src/IceGrid/IceGridDB.cpp b/cpp/src/IceGrid/IceGridDB.cpp
index 92c95a803b1..2c810287d3f 100644
--- a/cpp/src/IceGrid/IceGridDB.cpp
+++ b/cpp/src/IceGrid/IceGridDB.cpp
@@ -66,11 +66,11 @@ private:
string _serverVersion;
};
-class ObjectFactoryI : public Ice::ObjectFactory
+class ValueFactoryI : public Ice::ValueFactory
{
public:
- ObjectFactoryI(const string& serverVersion) :
+ ValueFactoryI(const string& serverVersion) :
_serverVersion(serverVersion)
{
}
@@ -88,10 +88,6 @@ public:
return 0;
}
- virtual void destroy()
- {
- }
-
private:
string _serverVersion;
@@ -282,9 +278,9 @@ Client::run(int argc, char* argv[])
if(!serverVersion.empty())
{
- ObjectFactoryPtr factory = new ObjectFactoryI(serverVersion);
- communicator()->addObjectFactory(factory, "::IceGrid::ServerDescriptor");
- communicator()->addObjectFactory(factory, "::IceGrid::IceBoxDescriptor");
+ ValueFactoryPtr factory = new ValueFactoryI(serverVersion);
+ communicator()->addValueFactory(factory, "::IceGrid::ServerDescriptor");
+ communicator()->addValueFactory(factory, "::IceGrid::IceBoxDescriptor");
}
Ice::InputStreamPtr stream = Ice::wrapInputStream(communicator(), buf, dbContext.encoding);
diff --git a/cpp/src/slice2cpp/Gen.cpp b/cpp/src/slice2cpp/Gen.cpp
index 61da931b521..c3d994ff1f5 100644
--- a/cpp/src/slice2cpp/Gen.cpp
+++ b/cpp/src/slice2cpp/Gen.cpp
@@ -459,7 +459,7 @@ Slice::Gen::generate(const UnitPtr& p)
H << "\n#include <Ice/IncomingAsync.h>";
}
C << "\n#include <Ice/LocalException.h>";
- C << "\n#include <Ice/ObjectFactory.h>";
+ C << "\n#include <Ice/ValueFactory.h>";
C << "\n#include <Ice/Outgoing.h>";
C << "\n#include <Ice/OutgoingAsync.h>";
}
@@ -3275,7 +3275,7 @@ Slice::Gen::ObjectVisitor::visitClassDefEnd(const ClassDefPtr& p)
if(!p->isAbstract())
{
- H << sp << nl << "static ::Ice::ObjectFactoryPtr ice_factory();";
+ H << sp << nl << "static ::Ice::ValueFactoryPtr ice_factory();";
}
if(preserved && !basePreserved)
@@ -3412,7 +3412,7 @@ Slice::Gen::ObjectVisitor::visitClassDefEnd(const ClassDefPtr& p)
if(!p->isAbstract())
{
string initName = p->flattenedScope() + p->name() + "_init";
- C << sp << nl << "const ::IceInternal::DefaultObjectFactoryInit< " << scoped << "> "
+ C << sp << nl << "const ::IceInternal::DefaultValueFactoryInit< " << scoped << "> "
<< initName << "(\"" << p->scoped() << "\");";
}
if(p->compactId() >= 0)
@@ -3425,9 +3425,9 @@ Slice::Gen::ObjectVisitor::visitClassDefEnd(const ClassDefPtr& p)
if(!p->isAbstract())
{
- C << sp << nl << "::Ice::ObjectFactoryPtr" << nl << scoped.substr(2) << "::ice_factory()";
+ C << sp << nl << "::Ice::ValueFactoryPtr" << nl << scoped.substr(2) << "::ice_factory()";
C << sb;
- C << nl << "return ::IceInternal::factoryTable->getObjectFactory(" << scoped << "::ice_staticId());";
+ C << nl << "return ::IceInternal::factoryTable->getValueFactory(" << scoped << "::ice_staticId());";
C << eb;
}
}
@@ -8557,7 +8557,7 @@ Slice::Gen::Cpp11ValueVisitor::visitClassDefEnd(const ClassDefPtr& p)
C << nl << "{";
string initName = p->flattenedScope() + p->name() + "_init";
- C << sp << nl << "const ::IceInternal::DefaultObjectFactoryInit< " << scoped << "> "
+ C << sp << nl << "const ::IceInternal::DefaultValueFactoryInit< " << scoped << "> "
<< initName << "(\"" << p->scoped() << "\");";
if(p->compactId() >= 0)
diff --git a/cpp/src/slice2java/Gen.cpp b/cpp/src/slice2java/Gen.cpp
index e5876b07211..d0397e9cb41 100644
--- a/cpp/src/slice2java/Gen.cpp
+++ b/cpp/src/slice2java/Gen.cpp
@@ -3277,20 +3277,17 @@ Slice::Gen::TypesVisitor::visitClassDefStart(const ClassDefPtr& p)
if(!p->isInterface() && p->allOperations().size() == 0 && !p->isLocal())
{
out << sp;
- out << nl << "private static class __F implements Ice.ObjectFactory";
+ out << nl << "private static class __F implements Ice.ValueFactory";
out << sb;
out << nl << "public Ice.Object create(String type)";
out << sb;
out << nl << "assert(type.equals(ice_staticId()));";
out << nl << "return new " << fixKwd(name) << "();";
out << eb;
- out << sp << nl << "public void destroy()";
- out << sb;
- out << eb;
out << eb;
- out << nl << "private static Ice.ObjectFactory _factory = new __F();";
+ out << nl << "private static Ice.ValueFactory _factory = new __F();";
out << sp;
- out << nl << "public static Ice.ObjectFactory" << nl << "ice_factory()";
+ out << nl << "public static Ice.ValueFactory" << nl << "ice_factory()";
out << sb;
out << nl << "return _factory;";
out << eb;
diff --git a/cpp/test/Ice/exceptions/AllTests.cpp b/cpp/test/Ice/exceptions/AllTests.cpp
index 562fb63a935..55eaa81147e 100644
--- a/cpp/test/Ice/exceptions/AllTests.cpp
+++ b/cpp/test/Ice/exceptions/AllTests.cpp
@@ -39,12 +39,13 @@ public:
#endif
};
-class ObjectFactoryI : virtual public Ice::ObjectFactory
+#ifndef ICE_CPP11_MAPPING // C++98
+class ValueFactoryI : virtual public Ice::ValueFactory
{
public:
virtual Ice::ObjectPtr create(const string&) { return 0; }
- virtual void destroy() {}
};
+#endif
class CallbackBase : public IceUtil::Monitor<IceUtil::Mutex>
{
@@ -634,10 +635,10 @@ allTests(const Ice::CommunicatorPtr& communicator)
}
cout << "ok" << endl;
- cout << "testing object factory registration exception... " << flush;
+ cout << "testing value factory registration exception... " << flush;
{
#ifdef ICE_CPP11_MAPPING
- communicator->addObjectFactory(
+ communicator->addValueFactory(
[](const std::string&)
{
return nullptr;
@@ -645,7 +646,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
"x");
try
{
- communicator->addObjectFactory(
+ communicator->addValueFactory(
[](const std::string&)
{
return nullptr;
@@ -657,11 +658,11 @@ allTests(const Ice::CommunicatorPtr& communicator)
{
}
#else
- Ice::ObjectFactoryPtr of = new ObjectFactoryI;
- communicator->addObjectFactory(of, "x");
+ Ice::ValueFactoryPtr vf = new ValueFactoryI;
+ communicator->addValueFactory(vf, "x");
try
{
- communicator->addObjectFactory(of, "x");
+ communicator->addValueFactory(vf, "x");
test(false);
}
catch(const Ice::AlreadyRegisteredException&)
diff --git a/cpp/test/Ice/objects/AllTests.cpp b/cpp/test/Ice/objects/AllTests.cpp
index c1115c698c2..6b7437f20c9 100644
--- a/cpp/test/Ice/objects/AllTests.cpp
+++ b/cpp/test/Ice/objects/AllTests.cpp
@@ -17,8 +17,8 @@ using namespace Test;
class AbstractBaseI : public AbstractBase
{
public:
-
- virtual void op(const Ice::Current&)
+
+ virtual void op(const Ice::Current&)
{}
};
@@ -98,7 +98,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
BasePtr bp2 = ICE_DYNAMIC_CAST(Base, bp1->ice_clone());
test(bp1->theS.str == bp2->theS.str);
test(bp1->str == bp2->str);
-
+
#ifndef ICE_CPP11_MAPPING
//
// With C++11 mapping value classes are never abstracts.
@@ -119,22 +119,22 @@ allTests(const Ice::CommunicatorPtr& communicator)
BPtr b1 = initial->getB1();
test(b1);
cout << "ok" << endl;
-
+
cout << "getting B2... " << flush;
BPtr b2 = initial->getB2();
test(b2);
cout << "ok" << endl;
-
+
cout << "getting C... " << flush;
CPtr c = initial->getC();
test(c);
cout << "ok" << endl;
-
+
cout << "getting D... " << flush;
DPtr d = initial->getD();
test(d);
cout << "ok" << endl;
-
+
cout << "checking consistency... " << flush;
test(b1 != b2);
#ifdef ICE_CPP11_MAPPING
@@ -182,7 +182,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
test(c);
test(d);
cout << "ok" << endl;
-
+
cout << "checking consistency... " << flush;
#ifdef ICE_CPP11_MAPPING
test(b1 != b2);
@@ -263,7 +263,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
test(h && HPtr::dynamicCast(h));
#endif
cout << "ok" << endl;
-
+
cout << "getting D1... " << flush;
D1Ptr d1 = ICE_MAKE_SHARED(D1,
ICE_MAKE_SHARED(A1, "a1"),
@@ -276,7 +276,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
test(d1->a3->name == "a3");
test(d1->a4->name == "a4");
cout << "ok" << endl;
-
+
cout << "throw EDerived... " << flush;
try
{
@@ -325,5 +325,13 @@ allTests(const Ice::CommunicatorPtr& communicator)
testUOE(communicator);
cout << "ok" << endl;
#endif
+
+ cout << "testing getting ObjectFactory... " << flush;
+ test(communicator->findObjectFactory("TestOF"));
+ cout << "ok" << endl;
+ cout << "testing getting ObjectFactory as ValueFactory... " << flush;
+ test(communicator->findValueFactory("TestOF"));
+ cout << "ok" << endl;
+
return initial;
}
diff --git a/cpp/test/Ice/objects/Client.cpp b/cpp/test/Ice/objects/Client.cpp
index 471f63de90e..cf1e60c1993 100644
--- a/cpp/test/Ice/objects/Client.cpp
+++ b/cpp/test/Ice/objects/Client.cpp
@@ -26,7 +26,7 @@ function<shared_ptr<T>(const string&)> makeFactory()
};
}
#else
-class MyObjectFactory : public Ice::ObjectFactory
+class MyValueFactory : public Ice::ValueFactory
{
public:
@@ -69,35 +69,58 @@ public:
return 0;
}
+};
+#endif
+class MyObjectFactory : public Ice::ObjectFactory
+{
+public:
+ MyObjectFactory() : _destroyed(false)
+ {
+ }
+
+ ~MyObjectFactory()
+ {
+ assert(_destroyed);
+ }
+
+ virtual Ice::ValuePtr create(const string& type)
+ {
+ return ICE_NULLPTR;
+ }
+
virtual void destroy()
{
- // Nothing to do
+ _destroyed = true;
}
+
+private:
+ bool _destroyed;
};
-#endif
int
run(int, char**, const Ice::CommunicatorPtr& communicator)
{
#ifdef ICE_CPP11_MAPPING
- communicator->addObjectFactory(makeFactory<BI>(), "::Test::B");
- communicator->addObjectFactory(makeFactory<CI>(), "::Test::C");
- communicator->addObjectFactory(makeFactory<DI>(), "::Test::D");
- communicator->addObjectFactory(makeFactory<EI>(), "::Test::E");
- communicator->addObjectFactory(makeFactory<FI>(), "::Test::F");
- communicator->addObjectFactory(makeFactory<II>(), "::Test::I");
- communicator->addObjectFactory(makeFactory<JI>(), "::Test::J");
- communicator->addObjectFactory(makeFactory<HI>(), "::Test::H");
+ communicator->addValueFactory(makeFactory<BI>(), "::Test::B");
+ communicator->addValueFactory(makeFactory<CI>(), "::Test::C");
+ communicator->addValueFactory(makeFactory<DI>(), "::Test::D");
+ communicator->addValueFactory(makeFactory<EI>(), "::Test::E");
+ communicator->addValueFactory(makeFactory<FI>(), "::Test::F");
+ communicator->addValueFactory(makeFactory<II>(), "::Test::I");
+ communicator->addValueFactory(makeFactory<JI>(), "::Test::J");
+ communicator->addValueFactory(makeFactory<HI>(), "::Test::H");
+ communicator->addObjectFactory(make_shared<MyObjectFactory>(), "TestOF");
#else
- Ice::ObjectFactoryPtr factory = new MyObjectFactory;
- communicator->addObjectFactory(factory, "::Test::B");
- communicator->addObjectFactory(factory, "::Test::C");
- communicator->addObjectFactory(factory, "::Test::D");
- communicator->addObjectFactory(factory, "::Test::E");
- communicator->addObjectFactory(factory, "::Test::F");
- communicator->addObjectFactory(factory, "::Test::I");
- communicator->addObjectFactory(factory, "::Test::J");
- communicator->addObjectFactory(factory, "::Test::H");
+ Ice::ValueFactoryPtr factory = new MyValueFactory;
+ communicator->addValueFactory(factory, "::Test::B");
+ communicator->addValueFactory(factory, "::Test::C");
+ communicator->addValueFactory(factory, "::Test::D");
+ communicator->addValueFactory(factory, "::Test::E");
+ communicator->addValueFactory(factory, "::Test::F");
+ communicator->addValueFactory(factory, "::Test::I");
+ communicator->addValueFactory(factory, "::Test::J");
+ communicator->addValueFactory(factory, "::Test::H");
+ communicator->addObjectFactory(new MyObjectFactory(), "TestOF");
#endif
InitialPrxPtr allTests(const Ice::CommunicatorPtr&);
diff --git a/cpp/test/Ice/objects/Collocated.cpp b/cpp/test/Ice/objects/Collocated.cpp
index 0d2f8562fa9..270d5b495ea 100644
--- a/cpp/test/Ice/objects/Collocated.cpp
+++ b/cpp/test/Ice/objects/Collocated.cpp
@@ -26,7 +26,7 @@ function<shared_ptr<T>(const string&)> makeFactory()
};
}
#else
-class MyObjectFactory : public Ice::ObjectFactory
+class MyValueFactory : public Ice::ValueFactory
{
public:
@@ -69,35 +69,57 @@ public:
return 0;
}
+};
+#endif
+class MyObjectFactory : public Ice::ObjectFactory
+{
+public:
+ MyObjectFactory() : _destroyed(false)
+ {
+ }
+
+ ~MyObjectFactory()
+ {
+ assert(_destroyed);
+ }
+
+ virtual Ice::ValuePtr create(const string& type)
+ {
+ return ICE_NULLPTR;
+ }
+
virtual void destroy()
{
- // Nothing to do
+ _destroyed = true;
}
+private:
+ bool _destroyed;
};
-#endif
int
run(int, char**, const Ice::CommunicatorPtr& communicator)
{
#ifdef ICE_CPP11_MAPPING
- communicator->addObjectFactory(makeFactory<BI>(), "::Test::B");
- communicator->addObjectFactory(makeFactory<CI>(), "::Test::C");
- communicator->addObjectFactory(makeFactory<DI>(), "::Test::D");
- communicator->addObjectFactory(makeFactory<EI>(), "::Test::E");
- communicator->addObjectFactory(makeFactory<FI>(), "::Test::F");
- communicator->addObjectFactory(makeFactory<II>(), "::Test::I");
- communicator->addObjectFactory(makeFactory<JI>(), "::Test::J");
- communicator->addObjectFactory(makeFactory<HI>(), "::Test::H");
+ communicator->addValueFactory(makeFactory<BI>(), "::Test::B");
+ communicator->addValueFactory(makeFactory<CI>(), "::Test::C");
+ communicator->addValueFactory(makeFactory<DI>(), "::Test::D");
+ communicator->addValueFactory(makeFactory<EI>(), "::Test::E");
+ communicator->addValueFactory(makeFactory<FI>(), "::Test::F");
+ communicator->addValueFactory(makeFactory<II>(), "::Test::I");
+ communicator->addValueFactory(makeFactory<JI>(), "::Test::J");
+ communicator->addValueFactory(makeFactory<HI>(), "::Test::H");
+ communicator->addObjectFactory(make_shared<MyObjectFactory>(), "TestOF");
#else
- Ice::ObjectFactoryPtr factory = new MyObjectFactory;
- communicator->addObjectFactory(factory, "::Test::B");
- communicator->addObjectFactory(factory, "::Test::C");
- communicator->addObjectFactory(factory, "::Test::D");
- communicator->addObjectFactory(factory, "::Test::E");
- communicator->addObjectFactory(factory, "::Test::F");
- communicator->addObjectFactory(factory, "::Test::I");
- communicator->addObjectFactory(factory, "::Test::J");
- communicator->addObjectFactory(factory, "::Test::H");
+ Ice::ValueFactoryPtr factory = new MyValueFactory;
+ communicator->addValueFactory(factory, "::Test::B");
+ communicator->addValueFactory(factory, "::Test::C");
+ communicator->addValueFactory(factory, "::Test::D");
+ communicator->addValueFactory(factory, "::Test::E");
+ communicator->addValueFactory(factory, "::Test::F");
+ communicator->addValueFactory(factory, "::Test::I");
+ communicator->addValueFactory(factory, "::Test::J");
+ communicator->addValueFactory(factory, "::Test::H");
+ communicator->addObjectFactory(new MyObjectFactory(), "TestOF");
#endif
communicator->getProperties()->setProperty("TestAdapter.Endpoints", "default -p 12010");
diff --git a/cpp/test/Ice/objects/Server.cpp b/cpp/test/Ice/objects/Server.cpp
index 0098cb34953..428cb735336 100644
--- a/cpp/test/Ice/objects/Server.cpp
+++ b/cpp/test/Ice/objects/Server.cpp
@@ -26,7 +26,7 @@ function<shared_ptr<T>(const string&)> makeFactory()
};
}
#else
-class MyObjectFactory : public Ice::ObjectFactory
+class MyValueFactory : public Ice::ValueFactory
{
public:
@@ -49,10 +49,6 @@ public:
return 0;
}
- virtual void destroy()
- {
- // Nothing to do
- }
};
#endif
@@ -60,20 +56,20 @@ int
run(int, char**, const Ice::CommunicatorPtr& communicator)
{
#ifdef ICE_CPP11_MAPPING
- communicator->addObjectFactory(makeFactory<II>(), "::Test::I");
- communicator->addObjectFactory(makeFactory<JI>(), "::Test::J");
- communicator->addObjectFactory(makeFactory<HI>(), "::Test::H");
+ communicator->addValueFactory(makeFactory<II>(), "::Test::I");
+ communicator->addValueFactory(makeFactory<JI>(), "::Test::J");
+ communicator->addValueFactory(makeFactory<HI>(), "::Test::H");
#else
- Ice::ObjectFactoryPtr factory = new MyObjectFactory;
- communicator->addObjectFactory(factory, "::Test::I");
- communicator->addObjectFactory(factory, "::Test::J");
- communicator->addObjectFactory(factory, "::Test::H");
+ Ice::ValueFactoryPtr factory = new MyValueFactory;
+ communicator->addValueFactory(factory, "::Test::I");
+ communicator->addValueFactory(factory, "::Test::J");
+ communicator->addValueFactory(factory, "::Test::H");
#endif
communicator->getProperties()->setProperty("TestAdapter.Endpoints", "default -p 12010");
Ice::ObjectAdapterPtr adapter = communicator->createObjectAdapter("TestAdapter");
adapter->add(ICE_MAKE_SHARED(InitialI, adapter), communicator->stringToIdentity("initial"));
-
+
#ifdef ICE_CPP11_MAPPING
//TODO
#else
diff --git a/cpp/test/Ice/optional/AllTests.cpp b/cpp/test/Ice/optional/AllTests.cpp
index 3e6a1560623..9a4b3bae2aa 100644
--- a/cpp/test/Ice/optional/AllTests.cpp
+++ b/cpp/test/Ice/optional/AllTests.cpp
@@ -177,7 +177,7 @@ private:
FPtr _f;
};
-class FactoryI : public Ice::ObjectFactory
+class FactoryI : public Ice::ValueFactory
{
bool _enabled;
@@ -223,10 +223,6 @@ public:
return 0;
}
- void destroy()
- {
- }
-
void
setEnabled(bool enabled)
{
@@ -239,7 +235,7 @@ InitialPrx
allTests(const Ice::CommunicatorPtr& communicator, bool)
{
FactoryIPtr factory = new FactoryI();
- communicator->addObjectFactory(factory, "");
+ communicator->addValueFactory(factory, "");
cout << "testing stringToProxy... " << flush;
string ref = "initial:default -p 12010";
@@ -621,7 +617,7 @@ allTests(const Ice::CommunicatorPtr& communicator, bool)
RecursivePtr outer = new Recursive();
outer->value = recursive1;
initial->pingPong(outer);
-
+
GPtr g = new G();
g->gg1Opt = new G1("gg1Opt");
g->gg2 = new G2(10);
diff --git a/cpp/test/Ice/slicing/objects/AllTests.cpp b/cpp/test/Ice/slicing/objects/AllTests.cpp
index e7b9c093d3a..44172e57669 100644
--- a/cpp/test/Ice/slicing/objects/AllTests.cpp
+++ b/cpp/test/Ice/slicing/objects/AllTests.cpp
@@ -82,7 +82,7 @@ public:
test(sbskd->sbskd == "SBSKnownDerived.sbskd");
called();
}
-
+
void
response_SBSKnownDerivedAsSBSKnownDerived(const SBSKnownDerivedPtr& sbskd)
{
@@ -106,7 +106,7 @@ public:
void
exception_SBSUnknownDerivedAsSBaseCompact(const Ice::Exception& exc)
{
- test(exc.ice_name() == "Ice::NoObjectFactoryException");
+ test(exc.ice_name() == "Ice::NoValueFactoryException");
called();
}
@@ -119,7 +119,7 @@ public:
void
exception_SUnknownAsObject10(const Ice::Exception& exc)
{
- test(exc.ice_name() == "Ice::NoObjectFactoryException");
+ test(exc.ice_name() == "Ice::NoValueFactoryException");
called();
}
@@ -463,13 +463,13 @@ public:
called();
}
- void
+ void
response()
{
test(false);
}
- void
+ void
exception(const ::Ice::Exception& ex)
{
if(!dynamic_cast<const Ice::OperationNotExistException*>(&ex))
@@ -481,7 +481,7 @@ public:
called();
}
}
-
+
BPtr rb;
SS3 rss3;
BDict rbdict;
@@ -509,7 +509,7 @@ public:
int PNodeI::counter = 0;
#ifndef ICE_CPP11_MAPPING
-class NodeFactoryI : public Ice::ObjectFactory
+class NodeFactoryI : public Ice::ValueFactory
{
public:
@@ -548,7 +548,7 @@ public:
int PreservedI::counter = 0;
#ifndef ICE_CPP11_MAPPING
-class PreservedFactoryI : public Ice::ObjectFactory
+class PreservedFactoryI : public Ice::ValueFactory
{
public:
@@ -579,7 +579,7 @@ testUOO(const TestIntfPrxPtr& test)
test(ICE_DYNAMIC_CAST(Ice::UnknownSlicedObject, o)->getUnknownTypeId() == "::Test::SUnknown");
test->checkSUnknown(o);
}
- catch(const Ice::NoObjectFactoryException&)
+ catch(const Ice::NoValueFactoryException&)
{
test(test->ice_getEncodingVersion() == Ice::Encoding_1_0);
}
@@ -814,7 +814,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
catch(const Ice::OperationNotExistException&)
{
}
- catch(const Ice::NoObjectFactoryException&)
+ catch(const Ice::NoValueFactoryException&)
{
// Expected.
}
@@ -883,7 +883,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
f.get();
test(false);
}
- catch(const Ice::NoObjectFactoryException&)
+ catch(const Ice::NoValueFactoryException&)
{
}
catch(...)
@@ -920,7 +920,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
f.get();
test(false);
}
- catch(const Ice::NoObjectFactoryException&)
+ catch(const Ice::NoValueFactoryException&)
{
}
catch(...)
@@ -941,7 +941,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
{
test(false);
}
-
+
}
#else
CallbackPtr cb = new Callback;
@@ -1289,7 +1289,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
auto result = f.get();
auto b1 = move(result.p1);
auto b2 = move(result.p2);
-
+
test(b1);
test(b1->ice_id() == "::Test::D1");
test(b1->sb == "D1.sb");
@@ -1599,7 +1599,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
auto b1 = f.get();
#else
CallbackPtr cb = new Callback;
- test->begin_returnTest3(d3, d1,
+ test->begin_returnTest3(d3, d1,
newCallback_TestIntf_returnTest3(cb, &Callback::response_returnTest3, &Callback::exception));
cb->check();
BPtr b1 = cb->rb;
@@ -2072,7 +2072,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
ss1->ice_collectable(true);
ss2->ice_collectable(true);
#endif
-
+
#ifdef ICE_CPP11_MAPPING
ss = test->sequenceTest_async(ss1, ss2).get();
#else
@@ -2766,7 +2766,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
CompactPCDerivedPtr pcd = ICE_MAKE_SHARED(CompactPCDerived);
pcd->pi = 3;
pcd->pbs.push_back(pcd);
-
+
#ifdef ICE_CPP11_MAPPING
if(test->ice_getEncodingVersion() == Ice::Encoding_1_0)
{
@@ -2785,7 +2785,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
}
#else
pcd->ice_collectable(true);
-
+
CallbackPtr cb = new Callback;
if(test->ice_getEncodingVersion() == Ice::Encoding_1_0)
{
@@ -2796,7 +2796,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
else
{
test->begin_exchangePBase(pcd, newCallback_TestIntf_exchangePBase(cb,
- &Callback::response_compactPreserved2,
+ &Callback::response_compactPreserved2,
&Callback::exception));
}
cb->check();
@@ -2875,7 +2875,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
// Register a factory in order to substitute our own subclass of PNode. This provides
// an easy way to determine how many unmarshaled instances currently exist.
//
- communicator->addObjectFactory(new NodeFactoryI, PNode::ice_staticId());
+ communicator->addValueFactory(new NodeFactoryI, PNode::ice_staticId());
//
// Relay a graph through the server. This test uses a preserved class
@@ -2921,7 +2921,7 @@ allTests(const Ice::CommunicatorPtr& communicator)
// Register a factory in order to substitute our own subclass of Preserved. This provides
// an easy way to determine how many unmarshaled instances currently exist.
//
- communicator->addObjectFactory(new PreservedFactoryI, Preserved::ice_staticId());
+ communicator->addValueFactory(new PreservedFactoryI, Preserved::ice_staticId());
//
// Obtain a preserved object from the server where the most-derived
diff --git a/cpp/test/Ice/stream/Client.cpp b/cpp/test/Ice/stream/Client.cpp
index 604ff0cb943..f09293e7092 100644
--- a/cpp/test/Ice/stream/Client.cpp
+++ b/cpp/test/Ice/stream/Client.cpp
@@ -59,7 +59,7 @@ public:
};
typedef IceUtil::Handle<TestObjectReader> TestObjectReaderPtr;
-class TestObjectFactory : public Ice::ObjectFactory
+class TestValueFactory : public Ice::ValueFactory
{
public:
@@ -94,7 +94,7 @@ public:
};
typedef IceUtil::Handle<TestReadObjectCallback> TestReadObjectCallbackPtr;
-class MyClassFactoryWrapper : public Ice::ObjectFactory
+class MyClassFactoryWrapper : public Ice::ValueFactory
{
public:
@@ -114,7 +114,7 @@ public:
}
void
- setFactory(const Ice::ObjectFactoryPtr& factory)
+ setFactory(const Ice::ValueFactoryPtr& factory)
{
if(!factory)
{
@@ -128,11 +128,11 @@ public:
private:
- Ice::ObjectFactoryPtr _factory;
+ Ice::ValueFactoryPtr _factory;
};
typedef IceUtil::Handle<MyClassFactoryWrapper> MyClassFactoryWrapperPtr;
-class MyInterfaceFactory : public Ice::ObjectFactory
+class MyInterfaceFactory : public Ice::ValueFactory
{
public:
@@ -152,8 +152,8 @@ int
run(int, char**, const Ice::CommunicatorPtr& communicator)
{
MyClassFactoryWrapperPtr factoryWrapper = new MyClassFactoryWrapper;
- communicator->addObjectFactory(factoryWrapper, Test::MyClass::ice_staticId());
- communicator->addObjectFactory(new MyInterfaceFactory, Test::MyInterface::ice_staticId());
+ communicator->addValueFactory(factoryWrapper, Test::MyClass::ice_staticId());
+ communicator->addValueFactory(new MyInterfaceFactory, Test::MyInterface::ice_staticId());
Ice::InputStreamPtr in;
Ice::OutputStreamPtr out;
@@ -829,7 +829,7 @@ run(int, char**, const Ice::CommunicatorPtr& communicator)
out->writePendingObjects();
out->finished(data);
test(writer->called);
- factoryWrapper->setFactory(new TestObjectFactory);
+ factoryWrapper->setFactory(new TestValueFactory);
in = Ice::createInputStream(communicator, data);
TestReadObjectCallbackPtr cb = new TestReadObjectCallback;
in->readObject(cb);
diff --git a/csharp/src/Ice/BasicStream.cs b/csharp/src/Ice/BasicStream.cs
index 3160a355bab..b2ae159dc5f 100644
--- a/csharp/src/Ice/BasicStream.cs
+++ b/csharp/src/Ice/BasicStream.cs
@@ -3452,7 +3452,7 @@ namespace IceInternal
}
catch(Exception ex)
{
- Ice.NoObjectFactoryException e = new Ice.NoObjectFactoryException(ex);
+ Ice.NoValueFactoryException e = new Ice.NoValueFactoryException(ex);
e.type = id;
throw e;
}
@@ -3561,7 +3561,7 @@ namespace IceInternal
abstract private class EncapsDecoder
{
- internal EncapsDecoder(BasicStream stream, ReadEncaps encaps, bool sliceObjects, ObjectFactoryManager f)
+ internal EncapsDecoder(BasicStream stream, ReadEncaps encaps, bool sliceObjects, ValueFactoryManager f)
{
_stream = stream;
_encaps = encaps;
@@ -3619,11 +3619,11 @@ namespace IceInternal
//
// Try to find a factory registered for the specific type.
//
- Ice.ObjectFactory userFactory = _servantFactoryManager.find(typeId);
+ Ice.ValueFactory userFactory = _servantFactoryManager.find(typeId);
Ice.Object v = null;
if(userFactory != null)
{
- v = userFactory.create(typeId);
+ v = userFactory(typeId);
}
//
@@ -3635,7 +3635,7 @@ namespace IceInternal
userFactory = _servantFactoryManager.find("");
if(userFactory != null)
{
- v = userFactory.create(typeId);
+ v = userFactory(typeId);
}
}
@@ -3779,7 +3779,7 @@ namespace IceInternal
protected readonly BasicStream _stream;
protected readonly ReadEncaps _encaps;
protected readonly bool _sliceObjects;
- protected ObjectFactoryManager _servantFactoryManager;
+ protected ValueFactoryManager _servantFactoryManager;
// Encapsulation attributes for object un-marshalling
protected Dictionary<int, LinkedList<IPatcher> > _patchMap;
@@ -3793,7 +3793,7 @@ namespace IceInternal
private sealed class EncapsDecoder10 : EncapsDecoder
{
- internal EncapsDecoder10(BasicStream stream, ReadEncaps encaps, bool sliceObjects, ObjectFactoryManager f)
+ internal EncapsDecoder10(BasicStream stream, ReadEncaps encaps, bool sliceObjects, ValueFactoryManager f)
: base(stream, encaps, sliceObjects, f)
{
_sliceType = SliceType.NoSlice;
@@ -4043,7 +4043,7 @@ namespace IceInternal
//
if(_typeId.Equals(Ice.ObjectImpl.ice_staticId()))
{
- throw new Ice.NoObjectFactoryException("", mostDerivedId);
+ throw new Ice.NoValueFactoryException("", mostDerivedId);
}
v = newInstance(_typeId);
@@ -4061,7 +4061,7 @@ namespace IceInternal
//
if(!_sliceObjects)
{
- throw new Ice.NoObjectFactoryException("no object factory found and object slicing is disabled",
+ throw new Ice.NoValueFactoryException("no value factory found and object slicing is disabled",
_typeId);
}
@@ -4089,7 +4089,7 @@ namespace IceInternal
private sealed class EncapsDecoder11 : EncapsDecoder
{
- internal EncapsDecoder11(BasicStream stream, ReadEncaps encaps, bool sliceObjects, ObjectFactoryManager f)
+ internal EncapsDecoder11(BasicStream stream, ReadEncaps encaps, bool sliceObjects, ValueFactoryManager f)
: base(stream, encaps, sliceObjects, f)
{
_objectIdIndex = 1;
@@ -4379,8 +4379,8 @@ namespace IceInternal
{
if(_current.sliceType == SliceType.ObjectSlice)
{
- throw new Ice.NoObjectFactoryException("no object factory found and compact format prevents " +
- "slicing (the sender should use the sliced format " +
+ throw new Ice.NoValueFactoryException("no value factory found and compact format prevents " +
+ "slicing (the sender should use the sliced format " +
"instead)", _current.typeId);
}
else
@@ -4541,7 +4541,7 @@ namespace IceInternal
//
if(!_sliceObjects)
{
- throw new Ice.NoObjectFactoryException("no object factory found and object slicing is disabled",
+ throw new Ice.NoValueFactoryException("no value factory found and object slicing is disabled",
_current.typeId);
}
@@ -5332,7 +5332,7 @@ namespace IceInternal
if(_readEncapsStack.decoder == null) // Lazy initialization.
{
- ObjectFactoryManager factoryMgr = instance_.servantFactoryManager();
+ ValueFactoryManager factoryMgr = instance_.servantFactoryManager();
if(_readEncapsStack.encoding_1_0)
{
_readEncapsStack.decoder = new EncapsDecoder10(this, _readEncapsStack, _sliceObjects, factoryMgr);
diff --git a/csharp/src/Ice/CommunicatorI.cs b/csharp/src/Ice/CommunicatorI.cs
index 915709fb641..7aa528b907d 100644
--- a/csharp/src/Ice/CommunicatorI.cs
+++ b/csharp/src/Ice/CommunicatorI.cs
@@ -107,6 +107,16 @@ namespace Ice
public ObjectFactory findObjectFactory(string id)
{
+ return instance_.servantFactoryManager().findObjectFactory(id);
+ }
+
+ public void addValueFactory(ValueFactory factory, string id)
+ {
+ instance_.servantFactoryManager().add(factory, id);
+ }
+
+ public ValueFactory findValueFactory(string id)
+ {
return instance_.servantFactoryManager().find(id);
}
@@ -177,7 +187,7 @@ namespace Ice
// This callback object receives the results of all invocations
// of Connection.begin_flushBatchRequests.
//
- IceInternal.CommunicatorFlushBatch result =
+ IceInternal.CommunicatorFlushBatch result =
new IceInternal.CommunicatorFlushBatch(this, instance_, __flushBatchRequests_name, cookie);
if(cb != null)
@@ -200,7 +210,7 @@ namespace Ice
public void end_flushBatchRequests(AsyncResult result)
{
- IceInternal.CommunicatorFlushBatch outAsync =
+ IceInternal.CommunicatorFlushBatch outAsync =
IceInternal.CommunicatorFlushBatch.check(result, this, __flushBatchRequests_name);
outAsync.wait();
}
@@ -209,7 +219,7 @@ namespace Ice
{
return instance_.createAdmin(adminAdapter, adminIdentity);
}
-
+
public Ice.ObjectPrx getAdmin()
{
return instance_.getAdmin();
diff --git a/csharp/src/Ice/Instance.cs b/csharp/src/Ice/Instance.cs
index 8dd99f3860f..c53f963b4e4 100644
--- a/csharp/src/Ice/Instance.cs
+++ b/csharp/src/Ice/Instance.cs
@@ -174,7 +174,7 @@ namespace IceInternal
}
}
- public ObjectFactoryManager servantFactoryManager()
+ public ValueFactoryManager servantFactoryManager()
{
lock(this)
{
@@ -916,7 +916,7 @@ namespace IceInternal
_outgoingConnectionFactory = new OutgoingConnectionFactory(communicator, this);
- _servantFactoryManager = new ObjectFactoryManager();
+ _servantFactoryManager = new ValueFactoryManager();
_objectAdapterFactory = new ObjectAdapterFactory(this, communicator);
@@ -1546,7 +1546,7 @@ namespace IceInternal
private RequestHandlerFactory _requestHandlerFactory;
private ProxyFactory _proxyFactory;
private OutgoingConnectionFactory _outgoingConnectionFactory;
- private ObjectFactoryManager _servantFactoryManager;
+ private ValueFactoryManager _servantFactoryManager;
private ObjectAdapterFactory _objectAdapterFactory;
private int _protocolSupport;
private bool _preferIPv6;
diff --git a/csharp/src/Ice/Makefile b/csharp/src/Ice/Makefile
index ee868c8c3d6..bf129ffbbf3 100644
--- a/csharp/src/Ice/Makefile
+++ b/csharp/src/Ice/Makefile
@@ -68,7 +68,6 @@ SRCS = Acceptor.cs \
Object.cs \
ObjectAdapterFactory.cs \
ObjectAdapterI.cs \
- ObjectFactoryManager.cs \
ObserverHelper.cs \
OpaqueEndpointI.cs \
Optional.cs \
@@ -124,6 +123,7 @@ SRCS = Acceptor.cs \
UnknownSlicedObject.cs \
UserExceptionFactory.cs \
Util.cs \
+ ValueFactoryManager.cs \
ValueWriter.cs \
WSAcceptor.cs \
WSConnector.cs \
@@ -154,6 +154,7 @@ SLICE_SRCS = $(SDIR)/BuiltinSequences.ice \
$(SDIR)/Router.ice \
$(SDIR)/ServantLocator.ice \
$(SDIR)/SliceChecksumDict.ice \
+ $(SDIR)/ValueFactory.ice \
$(SDIR)/Version.ice \
SDIR = $(slicedir)/Ice
diff --git a/csharp/src/Ice/Makefile.mak b/csharp/src/Ice/Makefile.mak
index 4399b506183..e002a13543f 100644
--- a/csharp/src/Ice/Makefile.mak
+++ b/csharp/src/Ice/Makefile.mak
@@ -69,7 +69,6 @@ SRCS = Acceptor.cs \
Object.cs \
ObjectAdapterFactory.cs \
ObjectAdapterI.cs \
- ObjectFactoryManager.cs \
ObserverHelper.cs \
OpaqueEndpointI.cs \
Optional.cs \
@@ -125,6 +124,7 @@ SRCS = Acceptor.cs \
UnknownSlicedObject.cs \
UserExceptionFactory.cs \
Util.cs \
+ ValueFactoryManager.cs \
ValueWriter.cs \
WSAcceptor.cs \
WSConnector.cs \
@@ -155,6 +155,7 @@ GEN_SRCS = $(GDIR)\BuiltinSequences.cs \
$(GDIR)\Router.cs \
$(GDIR)\ServantLocator.cs \
$(GDIR)\SliceChecksumDict.cs \
+ $(GDIR)\ValueFactory.cs \
$(GDIR)\Version.cs
SDIR = $(slicedir)\Ice
diff --git a/csharp/src/Ice/Stream.cs b/csharp/src/Ice/Stream.cs
index 0802c0edcfe..3d75e037222 100644
--- a/csharp/src/Ice/Stream.cs
+++ b/csharp/src/Ice/Stream.cs
@@ -42,7 +42,7 @@ namespace Ice
/// </summary>
/// <param name="slice">If true (the default), slicing is enabled; if false,
/// slicing is disabled. If slicing is disabled and the stream encounters a Slice type ID
- /// during decoding for which no object factory is installed, it raises NoObjectFactoryException.</param>
+ /// during decoding for which no object factory is installed, it raises NoValueFactoryException.</param>
void sliceObjects(bool slice);
/// <summary>
diff --git a/csharp/src/Ice/ObjectFactoryManager.cs b/csharp/src/Ice/ValueFactoryManager.cs
index e211713ed55..b2661014a9e 100644
--- a/csharp/src/Ice/ObjectFactoryManager.cs
+++ b/csharp/src/Ice/ValueFactoryManager.cs
@@ -12,9 +12,9 @@ namespace IceInternal
using System.Collections.Generic;
- public sealed class ObjectFactoryManager
+ public sealed class ValueFactoryManager
{
- public void add(Ice.ObjectFactory factory, string id)
+ public void add(Ice.ValueFactory factory, string id)
{
lock(this)
{
@@ -22,56 +22,70 @@ namespace IceInternal
{
Ice.AlreadyRegisteredException ex = new Ice.AlreadyRegisteredException();
ex.id = id;
- ex.kindOfObject = "object factory";
+ ex.kindOfObject = "value factory";
throw ex;
}
_factoryMap[id] = factory;
}
}
-
- public void remove(string id)
+
+ public void add(Ice.ObjectFactory factory, string id)
{
- object o = null;
lock(this)
{
- if(!_factoryMap.ContainsKey(id))
+ if(_factoryMap.ContainsKey(id))
{
- Ice.NotRegisteredException ex = new Ice.NotRegisteredException();
+ Ice.AlreadyRegisteredException ex = new Ice.AlreadyRegisteredException();
ex.id = id;
- ex.kindOfObject = "object factory";
+ ex.kindOfObject = "value factory";
throw ex;
}
- _factoryMap.Remove(id);
+
+ Ice.ValueFactory valueFactory = s => { return factory.create(s); };
+ _factoryMap[id] = valueFactory;
+ _objectFactoryMap[id] = factory;
}
- ((Ice.ObjectFactory)o).destroy();
}
-
- public Ice.ObjectFactory find(string id)
+
+ public Ice.ValueFactory find(string id)
{
lock(this)
{
- Ice.ObjectFactory factory = null;
+ Ice.ValueFactory factory = null;
_factoryMap.TryGetValue(id, out factory);
return factory;
}
}
-
+
+ public Ice.ObjectFactory findObjectFactory(string id)
+ {
+ lock(this)
+ {
+ Ice.ObjectFactory factory = null;
+ _objectFactoryMap.TryGetValue(id, out factory);
+ return factory;
+ }
+ }
+
//
// Only for use by Instance
//
- internal ObjectFactoryManager()
+ internal ValueFactoryManager()
{
- _factoryMap = new Dictionary<string, Ice.ObjectFactory>();
+ _factoryMap = new Dictionary<string, Ice.ValueFactory>();
+ _objectFactoryMap = new Dictionary<string, Ice.ObjectFactory>();
}
-
+
internal void destroy()
{
Dictionary<string, Ice.ObjectFactory> oldMap = null;
lock(this)
{
- oldMap = _factoryMap;
- _factoryMap = new Dictionary<string, Ice.ObjectFactory>();
+ _factoryMap = new Dictionary<string, Ice.ValueFactory>();
+
+ oldMap = _objectFactoryMap;
+ _objectFactoryMap = new Dictionary<string, Ice.ObjectFactory>();
}
foreach(Ice.ObjectFactory factory in oldMap.Values)
@@ -79,8 +93,9 @@ namespace IceInternal
factory.destroy();
}
}
-
- private Dictionary<string, Ice.ObjectFactory> _factoryMap;
+
+ private Dictionary<string, Ice.ValueFactory> _factoryMap;
+ private Dictionary<string, Ice.ObjectFactory> _objectFactoryMap;
}
}
diff --git a/csharp/test/Ice/exceptions/AllTests.cs b/csharp/test/Ice/exceptions/AllTests.cs
index 5869c1c80ab..1e7cd576f84 100644
--- a/csharp/test/Ice/exceptions/AllTests.cs
+++ b/csharp/test/Ice/exceptions/AllTests.cs
@@ -193,11 +193,10 @@ public class AllTests : TestCommon.TestApp
#endif
{
Write("testing object factory registration exception... ");
- Ice.ObjectFactory of = new ObjectFactoryI();
- communicator.addObjectFactory(of, "::x");
+ communicator.addValueFactory( _ => { return null; }, "::x");
try
{
- communicator.addObjectFactory(of, "::x");
+ communicator.addValueFactory( _ => { return null; }, "::x");
test(false);
}
catch(Ice.AlreadyRegisteredException)
@@ -674,7 +673,7 @@ public class AllTests : TestCommon.TestApp
{
test(false);
}
- cb.called();
+ cb.called();
});
cb.check();
}
diff --git a/csharp/test/Ice/exceptions/Makefile b/csharp/test/Ice/exceptions/Makefile
index 12870972028..f0a64b712c6 100644
--- a/csharp/test/Ice/exceptions/Makefile
+++ b/csharp/test/Ice/exceptions/Makefile
@@ -11,11 +11,11 @@ top_srcdir = ../../..
TARGETS = client.exe server.exe collocated.exe serveramd.exe
-C_SRCS = AllTests.cs Client.cs EmptyI.cs ObjectFactoryI.cs ServantLocatorI.cs ../../TestCommon/TestApp.cs
-S_SRCS = EmptyI.cs ObjectFactoryI.cs ServantLocatorI.cs Server.cs ThrowerI.cs
-COL_SRCS = AllTests.cs Collocated.cs EmptyI.cs ObjectFactoryI.cs ServantLocatorI.cs ThrowerI.cs \
+C_SRCS = AllTests.cs Client.cs EmptyI.cs ServantLocatorI.cs ../../TestCommon/TestApp.cs
+S_SRCS = EmptyI.cs ServantLocatorI.cs Server.cs ThrowerI.cs
+COL_SRCS = AllTests.cs Collocated.cs EmptyI.cs ServantLocatorI.cs ThrowerI.cs \
../../TestCommon/TestApp.cs
-SAMD_SRCS = EmptyI.cs ObjectFactoryI.cs ServantLocatorI.cs Server.cs ThrowerAMDI.cs
+SAMD_SRCS = EmptyI.cs ServantLocatorI.cs Server.cs ThrowerAMDI.cs
SLICE_SRCS = $(SDIR)/Test.ice
SLICE_AMD_SRCS = $(SDIR)/TestAMD.ice
diff --git a/csharp/test/Ice/exceptions/Makefile.mak b/csharp/test/Ice/exceptions/Makefile.mak
index 87b2af63240..77f7ff1603d 100644
--- a/csharp/test/Ice/exceptions/Makefile.mak
+++ b/csharp/test/Ice/exceptions/Makefile.mak
@@ -11,10 +11,10 @@ top_srcdir = ..\..\..
TARGETS = client.exe server.exe collocated.exe serveramd.exe
-C_SRCS = AllTests.cs Client.cs EmptyI.cs ObjectFactoryI.cs ServantLocatorI.cs ..\..\TestCommon\TestApp.cs
-S_SRCS = EmptyI.cs ObjectFactoryI.cs ServantLocatorI.cs Server.cs ThrowerI.cs
-COL_SRCS = AllTests.cs Collocated.cs EmptyI.cs ObjectFactoryI.cs ServantLocatorI.cs ThrowerI.cs ..\..\TestCommon\TestApp.cs
-SAMD_SRCS = EmptyI.cs ObjectFactoryI.cs ServantLocatorI.cs Server.cs ThrowerAMDI.cs
+C_SRCS = AllTests.cs Client.cs EmptyI.cs ServantLocatorI.cs ..\..\TestCommon\TestApp.cs
+S_SRCS = EmptyI.cs ServantLocatorI.cs Server.cs ThrowerI.cs
+COL_SRCS = AllTests.cs Collocated.cs EmptyI.cs ServantLocatorI.cs ThrowerI.cs ..\..\TestCommon\TestApp.cs
+SAMD_SRCS = EmptyI.cs ServantLocatorI.cs Server.cs ThrowerAMDI.cs
GEN_SRCS = $(GDIR)\Test.cs
GEN_AMD_SRCS = $(GDIR)\TestAMD.cs
diff --git a/csharp/test/Ice/objects/AllTests.cs b/csharp/test/Ice/objects/AllTests.cs
index 2a80f162240..f36ce872d0d 100644
--- a/csharp/test/Ice/objects/AllTests.cs
+++ b/csharp/test/Ice/objects/AllTests.cs
@@ -17,52 +17,70 @@ using System.Windows.Controls;
public class AllTests : TestCommon.TestApp
{
+ public static Ice.Object MyValueFactory(string type)
+ {
+ if (type.Equals("::Test::B"))
+ {
+ return new BI();
+ }
+ else if (type.Equals("::Test::C"))
+ {
+ return new CI();
+ }
+ else if (type.Equals("::Test::D"))
+ {
+ return new DI();
+ }
+ else if (type.Equals("::Test::E"))
+ {
+ return new EI();
+ }
+ else if (type.Equals("::Test::F"))
+ {
+ return new FI();
+ }
+ else if (type.Equals("::Test::I"))
+ {
+ return new II();
+ }
+ else if (type.Equals("::Test::J"))
+ {
+ return new JI();
+ }
+ else if (type.Equals("::Test::H"))
+ {
+ return new HI();
+ }
+ Debug.Assert(false); // Should never be reached
+ return null;
+ }
+
private class MyObjectFactory : Ice.ObjectFactory
{
+ public MyObjectFactory()
+ {
+ _destroyed = false;
+ }
+
+ ~MyObjectFactory()
+ {
+ Debug.Assert(_destroyed);
+ }
+
public Ice.Object create(string type)
{
- if (type.Equals("::Test::B"))
- {
- return new BI();
- }
- else if (type.Equals("::Test::C"))
- {
- return new CI();
- }
- else if (type.Equals("::Test::D"))
- {
- return new DI();
- }
- else if (type.Equals("::Test::E"))
- {
- return new EI();
- }
- else if (type.Equals("::Test::F"))
- {
- return new FI();
- }
- else if (type.Equals("::Test::I"))
- {
- return new II();
- }
- else if (type.Equals("::Test::J"))
- {
- return new JI();
- }
- else if (type.Equals("::Test::H"))
- {
- return new HI();
- }
- Debug.Assert(false); // Should never be reached
return null;
}
public void
destroy()
{
- // Nothing to do
+ _destroyed = true;
}
+
+ private bool _destroyed;
}
+
#if SILVERLIGHT
public override Ice.InitializationData initData()
{
@@ -78,15 +96,16 @@ public class AllTests : TestCommon.TestApp
public static InitialPrx allTests(Ice.Communicator communicator)
#endif
{
- Ice.ObjectFactory factory = new MyObjectFactory();
- communicator.addObjectFactory(factory, "::Test::B");
- communicator.addObjectFactory(factory, "::Test::C");
- communicator.addObjectFactory(factory, "::Test::D");
- communicator.addObjectFactory(factory, "::Test::E");
- communicator.addObjectFactory(factory, "::Test::F");
- communicator.addObjectFactory(factory, "::Test::I");
- communicator.addObjectFactory(factory, "::Test::J");
- communicator.addObjectFactory(factory, "::Test::H");
+ communicator.addValueFactory(MyValueFactory, "::Test::B");
+ communicator.addValueFactory(MyValueFactory, "::Test::C");
+ communicator.addValueFactory(MyValueFactory, "::Test::D");
+ communicator.addValueFactory(MyValueFactory, "::Test::E");
+ communicator.addValueFactory(MyValueFactory, "::Test::F");
+ communicator.addValueFactory(MyValueFactory, "::Test::I");
+ communicator.addValueFactory(MyValueFactory, "::Test::J");
+ communicator.addValueFactory(MyValueFactory, "::Test::H");
+
+ communicator.addObjectFactory(new MyObjectFactory(), "TestOF");
Write("testing stringToProxy... ");
Flush();
@@ -94,38 +113,38 @@ public class AllTests : TestCommon.TestApp
Ice.ObjectPrx @base = communicator.stringToProxy(@ref);
test(@base != null);
WriteLine("ok");
-
+
Write("testing checked cast... ");
Flush();
InitialPrx initial = InitialPrxHelper.checkedCast(@base);
test(initial != null);
test(initial.Equals(@base));
WriteLine("ok");
-
+
Write("getting B1... ");
Flush();
B b1 = initial.getB1();
test(b1 != null);
WriteLine("ok");
-
+
Write("getting B2... ");
Flush();
B b2 = initial.getB2();
test(b2 != null);
WriteLine("ok");
-
+
Write("getting C... ");
Flush();
C c = initial.getC();
test(c != null);
WriteLine("ok");
-
+
Write("getting D... ");
Flush();
D d = initial.getD();
test(d != null);
WriteLine("ok");
-
+
Write("checking consistency... ");
Flush();
test(b1 != b2);
@@ -153,7 +172,7 @@ public class AllTests : TestCommon.TestApp
test(b2.theA == b2);
test(d.theC == null);
WriteLine("ok");
-
+
Write("getting B1, B2, C, and D all at once... ");
Flush();
B b1out;
@@ -166,7 +185,7 @@ public class AllTests : TestCommon.TestApp
test(cout != null);
test(dout != null);
WriteLine("ok");
-
+
Write("checking consistency... ");
Flush();
test(b1out != b2out);
@@ -183,7 +202,7 @@ public class AllTests : TestCommon.TestApp
test(dout.preMarshalInvoked);
test(dout.postUnmarshalInvoked());
test(dout.theA.preMarshalInvoked);
- test(dout.theA.postUnmarshalInvoked());
+ test(dout.theA.postUnmarshalInvoked());
test(dout.theB.preMarshalInvoked);
test(dout.theB.postUnmarshalInvoked());
test(dout.theB.theC.preMarshalInvoked);
@@ -216,7 +235,7 @@ public class AllTests : TestCommon.TestApp
I h = initial.getH();
test(h != null && ((H)h) != null);
WriteLine("ok");
-
+
Write("getting D1... ");
Flush();
D1 d1 = new D1(new A1("a1"), new A1("a2"), new A1("a3"), new A1("a4"));
@@ -226,7 +245,7 @@ public class AllTests : TestCommon.TestApp
test(d1.a3.name.Equals("a3"));
test(d1.a4.name.Equals("a4"));
WriteLine("ok");
-
+
Write("throw EDerived... ");
Flush();
try
@@ -258,7 +277,7 @@ public class AllTests : TestCommon.TestApp
Base[] outS;
Base[] retS;
retS = initial.opBaseSeq(inS, out outS);
-
+
inS = new Base[1];
inS[0] = new Base(new S(), "");
retS = initial.opBaseSeq(inS, out outS);
@@ -303,6 +322,16 @@ public class AllTests : TestCommon.TestApp
test(false);
}
WriteLine("ok");
+
+ Write("testing getting ObjectFactory...");
+ Flush();
+ test(communicator.findObjectFactory("TestOF") != null);
+ WriteLine("ok");
+ Write("testing getting ObjectFactory as ValueFactory...");
+ Flush();
+ test(communicator.findValueFactory("TestOF") != null);
+ WriteLine("ok");
+
#if SILVERLIGHT
initial.shutdown();
#else
diff --git a/csharp/test/Ice/objects/Server.cs b/csharp/test/Ice/objects/Server.cs
index 3e8b124ee78..233971b175a 100644
--- a/csharp/test/Ice/objects/Server.cs
+++ b/csharp/test/Ice/objects/Server.cs
@@ -19,39 +19,29 @@ using System.Reflection;
public class Server
{
- private class MyObjectFactory : Ice.ObjectFactory
+ public static Ice.Object MyValueFactory(string type)
{
- public Ice.Object create(string type)
+ if(type.Equals("::Test::I"))
{
- if(type.Equals("::Test::I"))
- {
- return new II();
- }
- else if(type.Equals("::Test::J"))
- {
- return new JI();
- }
- else if(type.Equals("::Test::H"))
- {
- return new HI();
- }
- Debug.Assert(false); // Should never be reached
- return null;
+ return new II();
}
-
- public void
- destroy()
+ else if(type.Equals("::Test::J"))
+ {
+ return new JI();
+ }
+ else if(type.Equals("::Test::H"))
{
- // Nothing to do
+ return new HI();
}
+ Debug.Assert(false); // Should never be reached
+ return null;
}
private static int run(string[] args, Ice.Communicator communicator)
{
- Ice.ObjectFactory factory = new MyObjectFactory();
- communicator.addObjectFactory(factory, "::Test::I");
- communicator.addObjectFactory(factory, "::Test::J");
- communicator.addObjectFactory(factory, "::Test::H");
+ communicator.addValueFactory(MyValueFactory, "::Test::I");
+ communicator.addValueFactory(MyValueFactory, "::Test::J");
+ communicator.addValueFactory(MyValueFactory, "::Test::H");
communicator.getProperties().setProperty("TestAdapter.Endpoints", "default -p 12010");
Ice.ObjectAdapter adapter = communicator.createObjectAdapter("TestAdapter");
diff --git a/csharp/test/Ice/optional/AllTests.cs b/csharp/test/Ice/optional/AllTests.cs
index ec1f09527b3..6d96a71069c 100644
--- a/csharp/test/Ice/optional/AllTests.cs
+++ b/csharp/test/Ice/optional/AllTests.cs
@@ -32,7 +32,7 @@ public class AllTests : TestCommon.TestApp
#endif
{
FactoryI factory = new FactoryI();
- communicator.addObjectFactory(factory, "");
+ communicator.addValueFactory(factory.create, "");
Write("testing stringToProxy... ");
Flush();
@@ -444,7 +444,7 @@ public class AllTests : TestCommon.TestApp
test(10 == g.gg2.a);
test(20 == g.gg2Opt.Value.a);
test("gg1".Equals(g.gg1.a));
-
+
WriteLine("ok");
Write("testing marshaling of large containers with fixed size elements... ");
@@ -2476,7 +2476,7 @@ public class AllTests : TestCommon.TestApp
private Test.F _f;
}
- private class FactoryI : Ice.ObjectFactory
+ private class FactoryI
{
public Ice.Object create(string typeId)
{
@@ -2513,10 +2513,6 @@ public class AllTests : TestCommon.TestApp
return null;
}
- public void destroy()
- {
- }
-
internal void setEnabled(bool enabled)
{
_enabled = enabled;
diff --git a/csharp/test/Ice/slicing/objects/AllTests.cs b/csharp/test/Ice/slicing/objects/AllTests.cs
index d0e15db1c76..856325a178e 100644
--- a/csharp/test/Ice/slicing/objects/AllTests.cs
+++ b/csharp/test/Ice/slicing/objects/AllTests.cs
@@ -62,22 +62,6 @@ public class AllTests : TestCommon.TestApp
internal static int counter = 0;
}
- private class NodeFactoryI : Ice.ObjectFactory
- {
- public Ice.Object create(string id)
- {
- if(id.Equals(PNode.ice_staticId()))
- {
- return new PNodeI();
- }
- return null;
- }
-
- public void destroy()
- {
- }
- }
-
private class PreservedI : Preserved
{
public PreservedI()
@@ -88,20 +72,13 @@ public class AllTests : TestCommon.TestApp
internal static int counter = 0;
}
- private class PreservedFactoryI : Ice.ObjectFactory
+ private static Ice.Object PreservedFactoryI(string id)
{
- public Ice.Object create(string id)
- {
- if(id.Equals(Preserved.ice_staticId()))
+ if(id.Equals(Preserved.ice_staticId()))
{
return new PreservedI();
}
return null;
- }
-
- public void destroy()
- {
- }
}
#if SILVERLIGHT
@@ -321,7 +298,7 @@ public class AllTests : TestCommon.TestApp
testPrx.SBSUnknownDerivedAsSBaseCompact();
test(false);
}
- catch(Ice.NoObjectFactoryException)
+ catch(Ice.NoValueFactoryException)
{
// Expected.
}
@@ -380,7 +357,7 @@ public class AllTests : TestCommon.TestApp
},
(Ice.Exception ex) =>
{
- test(ex is Ice.NoObjectFactoryException);
+ test(ex is Ice.NoValueFactoryException);
cb.called();
});
cb.check();
@@ -398,7 +375,7 @@ public class AllTests : TestCommon.TestApp
test((o as Ice.UnknownSlicedObject).getUnknownTypeId().Equals("::Test::SUnknown"));
testPrx.checkSUnknown(o);
}
- catch(Ice.NoObjectFactoryException)
+ catch(Ice.NoValueFactoryException)
{
test(testPrx.ice_getEncodingVersion().Equals(Ice.Util.Encoding_1_0));
}
@@ -424,7 +401,7 @@ public class AllTests : TestCommon.TestApp
},
(Ice.Exception ex) =>
{
- test(ex.GetType().FullName.Equals("Ice.NoObjectFactoryException"));
+ test(ex.GetType().FullName.Equals("Ice.NoValueFactoryException"));
cb.called();
});
}
@@ -1303,7 +1280,7 @@ public class AllTests : TestCommon.TestApp
testPrx.begin_returnTest3(d3, b2).whenCompleted(
(B b) =>
{
- rv = b;
+ rv = b;
cb.called();
},
(Ice.Exception ex) =>
@@ -1379,7 +1356,7 @@ public class AllTests : TestCommon.TestApp
testPrx.begin_returnTest3(d3, d12).whenCompleted(
(B b) =>
{
- rv = b;
+ rv = b;
cb.called();
},
(Ice.Exception ex) =>
@@ -1540,7 +1517,7 @@ public class AllTests : TestCommon.TestApp
testPrx.begin_sequenceTest(ss1, ss2).whenCompleted(
(SS3 s) =>
{
- ss = s;
+ ss = s;
cb.called();
},
(Ice.Exception ex) =>
@@ -1656,7 +1633,7 @@ public class AllTests : TestCommon.TestApp
{
rv = (Dictionary<int, B>)r;
bout = (Dictionary<int, B>)b;
- cb.called();
+ cb.called();
},
(Ice.Exception ex) =>
{
@@ -1970,7 +1947,7 @@ public class AllTests : TestCommon.TestApp
// the Ice run time will install its own internal factory for Preserved upon receiving the
// first instance.
//
- communicator.addObjectFactory(new PreservedFactoryI(), Preserved.ice_staticId());
+ communicator.addValueFactory(PreservedFactoryI, Preserved.ice_staticId());
try
{
@@ -2362,7 +2339,14 @@ public class AllTests : TestCommon.TestApp
// Register a factory in order to substitute our own subclass of PNode. This provides
// an easy way to determine how many unmarshaled instances currently exist.
//
- communicator.addObjectFactory(new NodeFactoryI(), PNode.ice_staticId());
+ communicator.addValueFactory((string id) =>
+ {
+ if(id.Equals(PNode.ice_staticId()))
+ {
+ return new PNodeI();
+ }
+ return null;
+ }, PNode.ice_staticId());
//
// Relay a graph through the server.
diff --git a/csharp/test/Ice/stream/AllTests.cs b/csharp/test/Ice/stream/AllTests.cs
index 9e621417599..7034e762aaf 100644
--- a/csharp/test/Ice/stream/AllTests.cs
+++ b/csharp/test/Ice/stream/AllTests.cs
@@ -99,30 +99,16 @@ public class AllTests : TestCommon.TestApp
{
}
- private class MyInterfaceFactory : Ice.ObjectFactory
+ private static Ice.Object MyInterfaceFactory(string type)
{
- public Ice.Object create(string type)
- {
- Debug.Assert(type.Equals(Test.MyInterfaceDisp_.ice_staticId()));
- return new MyInterfaceI();
- }
-
- public void destroy()
- {
- }
+ Debug.Assert(type.Equals(Test.MyInterfaceDisp_.ice_staticId()));
+ return new MyInterfaceI();
}
- private class TestObjectFactory : Ice.ObjectFactory
+ private static Ice.Object TestObjectFactory(string type)
{
- public Ice.Object create(string type)
- {
- Debug.Assert(type.Equals(Test.MyClass.ice_staticId()));
- return new TestObjectReader();
- }
-
- public void destroy()
- {
- }
+ Debug.Assert(type.Equals(Test.MyClass.ice_staticId()));
+ return new TestObjectReader();
}
private class TestReadObjectCallback : Ice.ReadObjectCallback
@@ -135,7 +121,7 @@ public class AllTests : TestCommon.TestApp
internal Ice.Object obj;
}
- public class MyClassFactoryWrapper : Ice.ObjectFactory
+ public class MyClassFactoryWrapper
{
public MyClassFactoryWrapper()
{
@@ -146,21 +132,17 @@ public class AllTests : TestCommon.TestApp
{
if (_factory != null)
{
- return _factory.create(type);
+ return _factory(type);
}
return new Test.MyClass();
}
- public void destroy()
- {
- }
-
- public void setFactory(Ice.ObjectFactory factory)
+ public void setFactory(Ice.ValueFactory factory)
{
_factory = factory;
}
- private Ice.ObjectFactory _factory;
+ private Ice.ValueFactory _factory;
}
#if SILVERLIGHT
@@ -179,8 +161,9 @@ public class AllTests : TestCommon.TestApp
#endif
{
MyClassFactoryWrapper factoryWrapper = new MyClassFactoryWrapper();
- communicator.addObjectFactory(factoryWrapper, Test.MyClass.ice_staticId());
- communicator.addObjectFactory(new MyInterfaceFactory(), Test.MyInterfaceDisp_.ice_staticId());
+
+ communicator.addValueFactory(factoryWrapper.create, Test.MyClass.ice_staticId());
+ communicator.addValueFactory(MyInterfaceFactory, Test.MyInterfaceDisp_.ice_staticId());
Ice.InputStream @in;
Ice.OutputStream @out;
@@ -822,7 +805,7 @@ public class AllTests : TestCommon.TestApp
@out.writePendingObjects();
byte[] data = @out.finished();
test(writer.called);
- factoryWrapper.setFactory(new TestObjectFactory());
+ factoryWrapper.setFactory(TestObjectFactory);
@in = Ice.Util.createInputStream(communicator, data);
TestReadObjectCallback cb = new TestReadObjectCallback();
@in.readObject(cb);
diff --git a/java/.gitignore b/java/.gitignore
index 7cee12e4143..e7d1999a61f 100644
--- a/java/.gitignore
+++ b/java/.gitignore
@@ -1,3 +1,4 @@
build
.gradle
*.iml
+.idea
diff --git a/java/.idea/.gitignore b/java/.idea/.gitignore
deleted file mode 100644
index 8076052d696..00000000000
--- a/java/.idea/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-*
-!codeStyleSettings.xml
diff --git a/java/.idea/codeStyleSettings.xml b/java/.idea/codeStyleSettings.xml
deleted file mode 100644
index 15d5d02a710..00000000000
--- a/java/.idea/codeStyleSettings.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project version="4">
- <component name="ProjectCodeStyleSettingsManager">
- <option name="PER_PROJECT_SETTINGS">
- <value>
- <XML>
- <option name="XML_LEGACY_SETTINGS_IMPORTED" value="true" />
- </XML>
- <codeStyleSettings language="JAVA">
- <option name="BRACE_STYLE" value="2" />
- <option name="CLASS_BRACE_STYLE" value="2" />
- <option name="METHOD_BRACE_STYLE" value="2" />
- <option name="ELSE_ON_NEW_LINE" value="true" />
- <option name="WHILE_ON_NEW_LINE" value="true" />
- <option name="CATCH_ON_NEW_LINE" value="true" />
- <option name="FINALLY_ON_NEW_LINE" value="true" />
- <option name="SPACE_BEFORE_IF_PARENTHESES" value="false" />
- <option name="SPACE_BEFORE_WHILE_PARENTHESES" value="false" />
- <option name="SPACE_BEFORE_FOR_PARENTHESES" value="false" />
- <option name="SPACE_BEFORE_TRY_PARENTHESES" value="false" />
- <option name="SPACE_BEFORE_CATCH_PARENTHESES" value="false" />
- <option name="SPACE_BEFORE_SWITCH_PARENTHESES" value="false" />
- <option name="SPACE_BEFORE_SYNCHRONIZED_PARENTHESES" value="false" />
- <option name="IF_BRACE_FORCE" value="3" />
- <option name="DOWHILE_BRACE_FORCE" value="3" />
- <option name="WHILE_BRACE_FORCE" value="3" />
- <option name="FOR_BRACE_FORCE" value="3" />
- </codeStyleSettings>
- </value>
- </option>
- <option name="USE_PER_PROJECT_SETTINGS" value="true" />
- </component>
-</project>
-
diff --git a/java/gradle/wrapper/gradle-wrapper.properties b/java/gradle/wrapper/gradle-wrapper.properties
index 72676e753af..8d25f7a74b8 100644
--- a/java/gradle/wrapper/gradle-wrapper.properties
+++ b/java/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Wed Aug 12 11:58:49 NDT 2015
+#Thu Dec 03 11:16:08 EST 2015
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.6-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.6-all.zip
diff --git a/java/src/Ice/src/main/java/Ice/CommunicatorI.java b/java/src/Ice/src/main/java/Ice/CommunicatorI.java
index 464ca119820..de854848e34 100644
--- a/java/src/Ice/src/main/java/Ice/CommunicatorI.java
+++ b/java/src/Ice/src/main/java/Ice/CommunicatorI.java
@@ -124,14 +124,22 @@ public final class CommunicatorI implements Communicator
@Override
public void
- addObjectFactory(ObjectFactory factory, String id)
+ addObjectFactory(ObjectFactory factory, String id) { _instance.servantFactoryManager().add(factory, id); }
+
+ @Override
+ public ObjectFactory
+ findObjectFactory(String id) { return _instance.servantFactoryManager().findObjectFactory(id); }
+
+ @Override
+ public void
+ addValueFactory(ValueFactory factory, String id)
{
_instance.servantFactoryManager().add(factory, id);
}
@Override
- public ObjectFactory
- findObjectFactory(String id)
+ public ValueFactory
+ findValueFactory(String id)
{
return _instance.servantFactoryManager().find(id);
}
diff --git a/java/src/Ice/src/main/java/Ice/InputStream.java b/java/src/Ice/src/main/java/Ice/InputStream.java
index d6428c263ba..89a7c71a9d7 100644
--- a/java/src/Ice/src/main/java/Ice/InputStream.java
+++ b/java/src/Ice/src/main/java/Ice/InputStream.java
@@ -30,7 +30,7 @@ public interface InputStream
*
* @param slice If <code>true</code> (the default), slicing is enabled; if <code>false</code>,
* slicing is disabled. If slicing is disabled and the stream encounters a Slice type ID
- * during decoding for which no object factory is installed, it raises {@link NoObjectFactoryException}.
+ * during decoding for which no value factory is installed, it raises {@link NoValueFactoryException}.
**/
void sliceObjects(boolean slice);
diff --git a/java/src/Ice/src/main/java/IceInternal/BasicStream.java b/java/src/Ice/src/main/java/IceInternal/BasicStream.java
index 9394638f3cb..2c93207bda9 100644
--- a/java/src/Ice/src/main/java/IceInternal/BasicStream.java
+++ b/java/src/Ice/src/main/java/IceInternal/BasicStream.java
@@ -2745,7 +2745,7 @@ public class BasicStream
}
catch(java.lang.Exception ex)
{
- throw new Ice.NoObjectFactoryException("no object factory", id, ex);
+ throw new Ice.NoValueFactoryException("no value factory", id, ex);
}
return obj;
@@ -2951,7 +2951,7 @@ public class BasicStream
abstract private static class EncapsDecoder
{
- EncapsDecoder(BasicStream stream, boolean sliceObjects, ObjectFactoryManager f)
+ EncapsDecoder(BasicStream stream, boolean sliceObjects, ValueFactoryManager f)
{
_stream = stream;
_sliceObjects = sliceObjects;
@@ -3013,7 +3013,7 @@ public class BasicStream
//
// Try to find a factory registered for the specific type.
//
- Ice.ObjectFactory userFactory = _servantFactoryManager.find(typeId);
+ Ice.ValueFactory userFactory = _servantFactoryManager.find(typeId);
Ice.Object v = null;
if(userFactory != null)
{
@@ -3174,7 +3174,7 @@ public class BasicStream
protected final BasicStream _stream;
protected final boolean _sliceObjects;
- protected ObjectFactoryManager _servantFactoryManager;
+ protected ValueFactoryManager _servantFactoryManager;
// Encapsulation attributes for object un-marshalling
protected java.util.TreeMap<Integer, java.util.LinkedList<Patcher> > _patchMap;
@@ -3188,7 +3188,7 @@ public class BasicStream
private static final class EncapsDecoder10 extends EncapsDecoder
{
- EncapsDecoder10(BasicStream stream, boolean sliceObjects, ObjectFactoryManager f)
+ EncapsDecoder10(BasicStream stream, boolean sliceObjects, ValueFactoryManager f)
{
super(stream, sliceObjects, f);
_sliceType = SliceType.NoSlice;
@@ -3446,7 +3446,7 @@ public class BasicStream
//
if(_typeId.equals(Ice.ObjectImpl.ice_staticId()))
{
- throw new Ice.NoObjectFactoryException("", mostDerivedId);
+ throw new Ice.NoValueFactoryException("", mostDerivedId);
}
v = newInstance(_typeId);
@@ -3464,7 +3464,7 @@ public class BasicStream
//
if(!_sliceObjects)
{
- throw new Ice.NoObjectFactoryException("no object factory found and object slicing is disabled",
+ throw new Ice.NoValueFactoryException("no value factory found and object slicing is disabled",
_typeId);
}
@@ -3492,7 +3492,7 @@ public class BasicStream
private static class EncapsDecoder11 extends EncapsDecoder
{
- EncapsDecoder11(BasicStream stream, boolean sliceObjects, ObjectFactoryManager f)
+ EncapsDecoder11(BasicStream stream, boolean sliceObjects, ValueFactoryManager f)
{
super(stream, sliceObjects, f);
_objectIdIndex = 1;
@@ -3787,7 +3787,7 @@ public class BasicStream
{
if(_current.sliceType == SliceType.ObjectSlice)
{
- throw new Ice.NoObjectFactoryException("no object factory found and compact format prevents " +
+ throw new Ice.NoValueFactoryException("no value factory found and compact format prevents " +
"slicing (the sender should use the sliced format instead)",
_current.typeId);
}
@@ -3951,7 +3951,7 @@ public class BasicStream
//
if(!_sliceObjects)
{
- throw new Ice.NoObjectFactoryException("no object factory found and object slicing is disabled",
+ throw new Ice.NoValueFactoryException("no value factory found and object slicing is disabled",
_current.typeId);
}
@@ -4763,7 +4763,7 @@ public class BasicStream
if(_readEncapsStack.decoder == null) // Lazy initialization.
{
- ObjectFactoryManager factoryManager = _instance.servantFactoryManager();
+ ValueFactoryManager factoryManager = _instance.servantFactoryManager();
if(_readEncapsStack.encoding_1_0)
{
_readEncapsStack.decoder = new EncapsDecoder10(this, _sliceObjects, factoryManager);
diff --git a/java/src/Ice/src/main/java/IceInternal/Ex.java b/java/src/Ice/src/main/java/IceInternal/Ex.java
index 4e2cb28ee0c..55f746a0844 100644
--- a/java/src/Ice/src/main/java/IceInternal/Ex.java
+++ b/java/src/Ice/src/main/java/IceInternal/Ex.java
@@ -15,13 +15,13 @@ public class Ex
{
//
// If the object is an unknown sliced object, we didn't find an
- // object factory, in this case raise a NoObjectFactoryException
+ // value factory, in this case raise a NoValueFactoryException
// instead.
//
if(v instanceof Ice.UnknownSlicedObject)
{
Ice.UnknownSlicedObject uso = (Ice.UnknownSlicedObject)v;
- throw new Ice.NoObjectFactoryException("", uso.getUnknownTypeId());
+ throw new Ice.NoValueFactoryException("", uso.getUnknownTypeId());
}
String type = v.ice_id();
diff --git a/java/src/Ice/src/main/java/IceInternal/Instance.java b/java/src/Ice/src/main/java/IceInternal/Instance.java
index 30698fc060d..48f4a304883 100644
--- a/java/src/Ice/src/main/java/IceInternal/Instance.java
+++ b/java/src/Ice/src/main/java/IceInternal/Instance.java
@@ -255,7 +255,7 @@ public final class Instance
return _outgoingConnectionFactory;
}
- public synchronized ObjectFactoryManager
+ public synchronized ValueFactoryManager
servantFactoryManager()
{
if(_state == StateDestroyed)
@@ -987,7 +987,7 @@ public final class Instance
_outgoingConnectionFactory = new OutgoingConnectionFactory(communicator, this);
- _servantFactoryManager = new ObjectFactoryManager();
+ _servantFactoryManager = new ValueFactoryManager();
_objectAdapterFactory = new ObjectAdapterFactory(this, communicator);
@@ -1724,7 +1724,7 @@ public final class Instance
private RequestHandlerFactory _requestHandlerFactory;
private ProxyFactory _proxyFactory;
private OutgoingConnectionFactory _outgoingConnectionFactory;
- private ObjectFactoryManager _servantFactoryManager;
+ private ValueFactoryManager _servantFactoryManager;
private ObjectAdapterFactory _objectAdapterFactory;
private int _protocolSupport;
private boolean _preferIPv6;
diff --git a/java/src/Ice/src/main/java/IceInternal/ObjectFactoryManager.java b/java/src/Ice/src/main/java/IceInternal/ObjectFactoryManager.java
deleted file mode 100644
index f5582759292..00000000000
--- a/java/src/Ice/src/main/java/IceInternal/ObjectFactoryManager.java
+++ /dev/null
@@ -1,79 +0,0 @@
-// **********************************************************************
-//
-// 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.
-//
-// **********************************************************************
-
-package IceInternal;
-
-public final class ObjectFactoryManager
-{
- public synchronized void
- add(Ice.ObjectFactory factory, String id)
- {
- Object o = _factoryMap.get(id);
- if(o != null)
- {
- Ice.AlreadyRegisteredException ex = new Ice.AlreadyRegisteredException();
- ex.id = id;
- ex.kindOfObject = "object factory";
- throw ex;
- }
- _factoryMap.put(id, factory);
- }
-
- public void
- remove(String id)
- {
- Ice.ObjectFactory factory = null;
-
- synchronized(this)
- {
- factory = _factoryMap.get(id);
- if(factory == null)
- {
- Ice.NotRegisteredException ex = new Ice.NotRegisteredException();
- ex.id = id;
- ex.kindOfObject = "object factory";
- throw ex;
- }
- _factoryMap.remove(id);
- }
-
- factory.destroy();
- }
-
- public synchronized Ice.ObjectFactory
- find(String id)
- {
- return _factoryMap.get(id);
- }
-
- //
- // Only for use by Instance
- //
- ObjectFactoryManager()
- {
- }
-
- void
- destroy()
- {
- java.util.Map<String, Ice.ObjectFactory> oldMap = null;
- synchronized(this)
- {
- oldMap = _factoryMap;
- _factoryMap = new java.util.HashMap<String, Ice.ObjectFactory>();
- }
-
- for(Ice.ObjectFactory factory : oldMap.values())
- {
- factory.destroy();
- }
- }
-
- private java.util.Map<String, Ice.ObjectFactory> _factoryMap = new java.util.HashMap<String, Ice.ObjectFactory>();
-}
diff --git a/java/src/Ice/src/main/java/IceInternal/ValueFactoryManager.java b/java/src/Ice/src/main/java/IceInternal/ValueFactoryManager.java
new file mode 100644
index 00000000000..f685d088b9a
--- /dev/null
+++ b/java/src/Ice/src/main/java/IceInternal/ValueFactoryManager.java
@@ -0,0 +1,100 @@
+// **********************************************************************
+//
+// 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.
+//
+// **********************************************************************
+
+package IceInternal;
+
+public final class ValueFactoryManager
+{
+ public synchronized void
+ add(Ice.ObjectFactory factory, String id)
+ {
+ Object o = _factoryMap.get(id);
+ if(o != null)
+ {
+ Ice.AlreadyRegisteredException ex = new Ice.AlreadyRegisteredException();
+ ex.id = id;
+ ex.kindOfObject = "value factory";
+ throw ex;
+ }
+
+ _objectFactoryMap.put(id, factory);
+ _factoryMap.put(id, new ObjectFactoryWrapper(factory));
+ }
+
+ public synchronized void
+ add(Ice.ValueFactory factory, String id)
+ {
+ Object o = _factoryMap.get(id);
+ if(o != null)
+ {
+ Ice.AlreadyRegisteredException ex = new Ice.AlreadyRegisteredException();
+ ex.id = id;
+ ex.kindOfObject = "value factory";
+ throw ex;
+ }
+ _factoryMap.put(id, factory);
+ }
+
+ public synchronized Ice.ValueFactory
+ find(String id)
+ {
+ return _factoryMap.get(id);
+ }
+
+ public synchronized Ice.ObjectFactory
+ findObjectFactory(String id)
+ {
+ return _objectFactoryMap.get(id);
+ }
+
+ //
+ // Only for use by Instance
+ //
+ ValueFactoryManager()
+ {
+ }
+
+ void
+ destroy()
+ {
+ java.util.Map<String, Ice.ObjectFactory> oldMap = null;
+ synchronized(this)
+ {
+ _factoryMap = new java.util.HashMap<String, Ice.ValueFactory>();
+
+
+ oldMap = _objectFactoryMap;
+ _objectFactoryMap = new java.util.HashMap<String, Ice.ObjectFactory>();
+
+ }
+
+ for(Ice.ObjectFactory factory : oldMap.values())
+ {
+ factory.destroy();
+ }
+ }
+
+ private class ObjectFactoryWrapper implements Ice.ValueFactory
+ {
+ public ObjectFactoryWrapper(Ice.ObjectFactory factory)
+ {
+ _objectFactory = factory;
+ }
+
+ public Ice.Object create(String id)
+ {
+ return _objectFactory.create(id);
+ }
+
+ private final Ice.ObjectFactory _objectFactory;
+ }
+
+ private java.util.Map<String, Ice.ValueFactory> _factoryMap = new java.util.HashMap<String, Ice.ValueFactory>();
+ private java.util.Map<String, Ice.ObjectFactory> _objectFactoryMap = new java.util.HashMap<String, Ice.ObjectFactory>();
+}
diff --git a/java/test/src/main/java/test/Ice/classLoader/AllTests.java b/java/test/src/main/java/test/Ice/classLoader/AllTests.java
index 2c8c9e8d780..ecf9cd26d38 100644
--- a/java/test/src/main/java/test/Ice/classLoader/AllTests.java
+++ b/java/test/src/main/java/test/Ice/classLoader/AllTests.java
@@ -20,7 +20,7 @@ import test.Util.Application;
public class AllTests
{
- private static class MyObjectFactory implements Ice.ObjectFactory
+ private static class MyValueFactory implements Ice.ValueFactory
{
@Override
public Ice.Object create(String type)
@@ -33,12 +33,6 @@ public class AllTests
assert (false); // Should never be reached
return null;
}
-
- @Override
- public void destroy()
- {
- // Nothing to do
- }
}
private static class MyClassLoader extends ClassLoader
@@ -179,7 +173,7 @@ public class AllTests
{
initial.getAbstractClass();
}
- catch(Ice.NoObjectFactoryException ex)
+ catch(Ice.NoValueFactoryException ex)
{
// Expected.
}
@@ -187,7 +181,7 @@ public class AllTests
test(classLoader.check("test.Ice.classLoader.Test.AbstractClass"));
classLoader.reset();
- ic.addObjectFactory(new MyObjectFactory(), "::Test::AbstractClass");
+ ic.addValueFactory(new MyValueFactory(), "::Test::AbstractClass");
AbstractClass ac = initial.getAbstractClass();
test(ac != null);
test(!classLoader.check("Test.AbstractClass"));
diff --git a/java/test/src/main/java/test/Ice/exceptions/AllTests.java b/java/test/src/main/java/test/Ice/exceptions/AllTests.java
index 517da43f829..542d1f4eb2c 100644
--- a/java/test/src/main/java/test/Ice/exceptions/AllTests.java
+++ b/java/test/src/main/java/test/Ice/exceptions/AllTests.java
@@ -826,12 +826,12 @@ public class AllTests
}
{
- out.print("testing object factory registration exception... ");
- Ice.ObjectFactory of = new ObjectFactoryI();
- communicator.addObjectFactory(of, "::x");
+ out.print("testing value factory registration exception... ");
+ Ice.ValueFactory of = new ValueFactoryI();
+ communicator.addValueFactory(of, "::x");
try
{
- communicator.addObjectFactory(of, "::x");
+ communicator.addValueFactory(of, "::x");
test(false);
}
catch(Ice.AlreadyRegisteredException ex)
@@ -1138,7 +1138,7 @@ public class AllTests
ex.printStackTrace();
test(false);
}
-
+
ThrowerPrx thrower2 = ThrowerPrxHelper.uncheckedCast(
communicator.stringToProxy("thrower:default -p 12011"));
try
diff --git a/java/test/src/main/java/test/Ice/exceptions/ObjectFactoryI.java b/java/test/src/main/java/test/Ice/exceptions/ValueFactoryI.java
index 3d19f59826b..e14b6996188 100644
--- a/java/test/src/main/java/test/Ice/exceptions/ObjectFactoryI.java
+++ b/java/test/src/main/java/test/Ice/exceptions/ValueFactoryI.java
@@ -10,7 +10,7 @@
package test.Ice.exceptions;
-public final class ObjectFactoryI implements Ice.ObjectFactory
+public final class ValueFactoryI implements Ice.ValueFactory
{
@Override
public Ice.Object create(String s)
@@ -18,8 +18,4 @@ public final class ObjectFactoryI implements Ice.ObjectFactory
return null;
}
- @Override
- public void destroy()
- {
- }
}
diff --git a/java/test/src/main/java/test/Ice/objects/AllTests.java b/java/test/src/main/java/test/Ice/objects/AllTests.java
index 65b30df0eee..9a99ce425f5 100644
--- a/java/test/src/main/java/test/Ice/objects/AllTests.java
+++ b/java/test/src/main/java/test/Ice/objects/AllTests.java
@@ -152,7 +152,7 @@ public class AllTests
test(d.preMarshalInvoked);
test(d.postUnmarshalInvoked(null));
test(d.theA.preMarshalInvoked);
- test(d.theA.postUnmarshalInvoked(null));
+ test(d.theA.postUnmarshalInvoked(null));
test(d.theB.preMarshalInvoked);
test(d.theB.postUnmarshalInvoked(null));
test(d.theB.theC.preMarshalInvoked);
@@ -196,7 +196,7 @@ public class AllTests
I h = initial.getH();
test(h != null && ((H)h) != null);
out.println("ok");
-
+
out.print("getting D1... ");
out.flush();
D1 d1 = new D1(new A1("a1"), new A1("a2"), new A1("a3"), new A1("a4"));
@@ -206,7 +206,7 @@ public class AllTests
test(d1.a3.name.equals("a3"));
test(d1.a4.name.equals("a4"));
out.println("ok");
-
+
out.print("throw EDerived... ");
out.flush();
try
@@ -229,7 +229,7 @@ public class AllTests
initial.setI(j);
initial.setI(h);
out.println("ok");
-
+
out.print("testing sequences...");
try
{
@@ -238,7 +238,7 @@ public class AllTests
BaseSeqHolder outS = new BaseSeqHolder();
Base[] retS;
retS = initial.opBaseSeq(inS, outS);
-
+
inS = new Base[1];
inS[0] = new Base(new S(), "");
retS = initial.opBaseSeq(inS, outS);
@@ -284,6 +284,14 @@ public class AllTests
}
out.println("ok");
+ out.print("testing getting ObjectFactory...");
+ out.flush();
+ test(communicator.findObjectFactory("TestOF") != null);
+ out.println("ok");
+ out.print("testing getting ObjectFactory as ValueFactory...");
+ test(communicator.findValueFactory("TestOF") != null);
+ out.println("ok");
+
return initial;
}
}
diff --git a/java/test/src/main/java/test/Ice/objects/Client.java b/java/test/src/main/java/test/Ice/objects/Client.java
index 94796610b60..438ddbc5ea1 100644
--- a/java/test/src/main/java/test/Ice/objects/Client.java
+++ b/java/test/src/main/java/test/Ice/objects/Client.java
@@ -13,7 +13,7 @@ import test.Ice.objects.Test.InitialPrx;
public class Client extends test.Util.Application
{
- private static class MyObjectFactory implements Ice.ObjectFactory
+ private static class MyValueFactory implements Ice.ValueFactory
{
@Override
public Ice.Object create(String type)
@@ -39,6 +39,7 @@ public class Client extends test.Util.Application
return new FI();
}
else if(type.equals("::Test::I"))
+
{
return new II();
}
@@ -54,11 +55,20 @@ public class Client extends test.Util.Application
assert (false); // Should never be reached
return null;
}
+ }
+
+ private static class MyObjectFactory implements Ice.ObjectFactory
+ {
+ @Override
+ public Ice.Object create(String type)
+ {
+ return null;
+ }
@Override
public void destroy()
{
- // Nothing to do
+ //
}
}
@@ -66,15 +76,17 @@ public class Client extends test.Util.Application
public int run(String[] args)
{
Ice.Communicator communicator = communicator();
- Ice.ObjectFactory factory = new MyObjectFactory();
- communicator.addObjectFactory(factory, "::Test::B");
- communicator.addObjectFactory(factory, "::Test::C");
- communicator.addObjectFactory(factory, "::Test::D");
- communicator.addObjectFactory(factory, "::Test::E");
- communicator.addObjectFactory(factory, "::Test::F");
- communicator.addObjectFactory(factory, "::Test::I");
- communicator.addObjectFactory(factory, "::Test::J");
- communicator.addObjectFactory(factory, "::Test::H");
+ Ice.ValueFactory factory = new MyValueFactory();
+ communicator.addValueFactory(factory, "::Test::B");
+ communicator.addValueFactory(factory, "::Test::C");
+ communicator.addValueFactory(factory, "::Test::D");
+ communicator.addValueFactory(factory, "::Test::E");
+ communicator.addValueFactory(factory, "::Test::F");
+ communicator.addValueFactory(factory, "::Test::I");
+ communicator.addValueFactory(factory, "::Test::J");
+ communicator.addValueFactory(factory, "::Test::H");
+
+ communicator.addObjectFactory(new MyObjectFactory(), "TestOF");
InitialPrx initial = AllTests.allTests(communicator, getWriter());
initial.shutdown();
diff --git a/java/test/src/main/java/test/Ice/objects/Collocated.java b/java/test/src/main/java/test/Ice/objects/Collocated.java
index 6ec8eff5f7d..0bcd2586e98 100644
--- a/java/test/src/main/java/test/Ice/objects/Collocated.java
+++ b/java/test/src/main/java/test/Ice/objects/Collocated.java
@@ -13,7 +13,7 @@ import test.Ice.objects.Test.Initial;
public class Collocated extends test.Util.Application
{
- private static class MyObjectFactory implements Ice.ObjectFactory
+ private static class MyValueFactory implements Ice.ValueFactory
{
@Override
public Ice.Object create(String type)
@@ -54,11 +54,20 @@ public class Collocated extends test.Util.Application
assert (false); // Should never be reached
return null;
}
+ }
+
+ private static class MyObjectFactory implements Ice.ObjectFactory
+ {
+ @Override
+ public Ice.Object create(String type)
+ {
+ return null;
+ }
@Override
public void destroy()
{
- // Nothing to do
+ //
}
}
@@ -66,15 +75,17 @@ public class Collocated extends test.Util.Application
public int run(String[] args)
{
Ice.Communicator communicator = communicator();
- Ice.ObjectFactory factory = new MyObjectFactory();
- communicator.addObjectFactory(factory, "::Test::B");
- communicator.addObjectFactory(factory, "::Test::C");
- communicator.addObjectFactory(factory, "::Test::D");
- communicator.addObjectFactory(factory, "::Test::E");
- communicator.addObjectFactory(factory, "::Test::F");
- communicator.addObjectFactory(factory, "::Test::I");
- communicator.addObjectFactory(factory, "::Test::J");
- communicator.addObjectFactory(factory, "::Test::H");
+ Ice.ValueFactory factory = new MyValueFactory();
+ communicator.addValueFactory(factory, "::Test::B");
+ communicator.addValueFactory(factory, "::Test::C");
+ communicator.addValueFactory(factory, "::Test::D");
+ communicator.addValueFactory(factory, "::Test::E");
+ communicator.addValueFactory(factory, "::Test::F");
+ communicator.addValueFactory(factory, "::Test::I");
+ communicator.addValueFactory(factory, "::Test::J");
+ communicator.addValueFactory(factory, "::Test::H");
+
+ communicator.addObjectFactory(new MyObjectFactory(), "TestOF");
communicator.getProperties().setProperty("TestAdapter.Endpoints", "default -p 12010");
Ice.ObjectAdapter adapter = communicator.createObjectAdapter("TestAdapter");
diff --git a/java/test/src/main/java/test/Ice/objects/Server.java b/java/test/src/main/java/test/Ice/objects/Server.java
index 5d076043338..9056574bec1 100644
--- a/java/test/src/main/java/test/Ice/objects/Server.java
+++ b/java/test/src/main/java/test/Ice/objects/Server.java
@@ -11,7 +11,7 @@ package test.Ice.objects;
public class Server extends test.Util.Application
{
- private static class MyObjectFactory implements Ice.ObjectFactory
+ private static class MyValueFactory implements Ice.ValueFactory
{
@Override
public Ice.Object create(String type)
@@ -32,22 +32,16 @@ public class Server extends test.Util.Application
assert (false); // Should never be reached
return null;
}
-
- @Override
- public void destroy()
- {
- // Nothing to do
- }
}
@Override
public int run(String[] args)
{
Ice.Communicator communicator = communicator();
- Ice.ObjectFactory factory = new MyObjectFactory();
- communicator.addObjectFactory(factory, "::Test::I");
- communicator.addObjectFactory(factory, "::Test::J");
- communicator.addObjectFactory(factory, "::Test::H");
+ Ice.ValueFactory factory = new MyValueFactory();
+ communicator.addValueFactory(factory, "::Test::I");
+ communicator.addValueFactory(factory, "::Test::J");
+ communicator.addValueFactory(factory, "::Test::H");
Ice.ObjectAdapter adapter = communicator.createObjectAdapter("TestAdapter");
Ice.Object object = new InitialI(adapter);
diff --git a/java/test/src/main/java/test/Ice/optional/AllTests.java b/java/test/src/main/java/test/Ice/optional/AllTests.java
index 423072dd6d4..64273a33410 100644
--- a/java/test/src/main/java/test/Ice/optional/AllTests.java
+++ b/java/test/src/main/java/test/Ice/optional/AllTests.java
@@ -29,7 +29,7 @@ public class AllTests
Ice.Communicator communicator = app.communicator();
FactoryI factory = new FactoryI();
- communicator.addObjectFactory(factory, "");
+ communicator.addValueFactory(factory, "");
out.print("testing stringToProxy... ");
out.flush();
@@ -415,7 +415,7 @@ public class AllTests
test(10 == g.gg2.a);
test(20 == g.getGg2Opt().a);
test("gg1".equals(g.gg1.a));
-
+
out.println("ok");
out.print("testing marshaling of large containers with fixed size elements... ");
@@ -2450,7 +2450,7 @@ public class AllTests
private F _f;
}
- private static class FactoryI implements Ice.ObjectFactory
+ private static class FactoryI implements Ice.ValueFactory
{
@Override
public Ice.Object create(String typeId)
@@ -2488,11 +2488,6 @@ public class AllTests
return null;
}
- @Override
- public void destroy()
- {
- }
-
void setEnabled(boolean enabled)
{
_enabled = enabled;
diff --git a/java/test/src/main/java/test/Ice/slicing/objects/AllTests.java b/java/test/src/main/java/test/Ice/slicing/objects/AllTests.java
index e1b805fdff3..6eacdb08a5d 100644
--- a/java/test/src/main/java/test/Ice/slicing/objects/AllTests.java
+++ b/java/test/src/main/java/test/Ice/slicing/objects/AllTests.java
@@ -248,7 +248,7 @@ public class AllTests
callback.called();
return;
}
- test(exc instanceof Ice.NoObjectFactoryException);
+ test(exc instanceof Ice.NoValueFactoryException);
callback.called();
}
@@ -274,7 +274,7 @@ public class AllTests
public void
exception(Ice.LocalException exc)
{
- test(exc.ice_name().equals("Ice::NoObjectFactoryException"));
+ test(exc.ice_name().equals("Ice::NoValueFactoryException"));
callback.called();
}
@@ -929,7 +929,7 @@ public class AllTests
private Callback callback = new Callback();
}
- private static class Callback_TestIntf_throwUnknownDerivedAsBaseI
+ private static class Callback_TestIntf_throwUnknownDerivedAsBaseI
extends Callback_TestIntf_throwUnknownDerivedAsBase
{
@Override
@@ -1282,7 +1282,7 @@ public class AllTests
static int counter = 0;
}
- private static class NodeFactoryI implements Ice.ObjectFactory
+ private static class NodeFactoryI implements Ice.ValueFactory
{
@Override
public Ice.Object create(String id)
@@ -1293,11 +1293,6 @@ public class AllTests
}
return null;
}
-
- @Override
- public void destroy()
- {
- }
}
private static class PreservedI extends Preserved
@@ -1310,7 +1305,7 @@ public class AllTests
static int counter = 0;
}
- private static class PreservedFactoryI implements Ice.ObjectFactory
+ private static class PreservedFactoryI implements Ice.ValueFactory
{
@Override
public Ice.Object create(String id)
@@ -1321,11 +1316,6 @@ public class AllTests
}
return null;
}
-
- @Override
- public void destroy()
- {
- }
}
public static TestIntfPrx
@@ -1494,7 +1484,7 @@ public class AllTests
test.SBSUnknownDerivedAsSBaseCompact();
test(false);
}
- catch(Ice.NoObjectFactoryException ex)
+ catch(Ice.NoValueFactoryException ex)
{
// Expected.
}
@@ -1550,7 +1540,7 @@ public class AllTests
test(((Ice.UnknownSlicedObject)o).getUnknownTypeId().equals("::Test::SUnknown"));
test.checkSUnknown(o);
}
- catch(Ice.NoObjectFactoryException ex)
+ catch(Ice.NoValueFactoryException ex)
{
test(test.ice_getEncodingVersion().equals(Ice.Util.Encoding_1_0));
}
@@ -2750,7 +2740,7 @@ public class AllTests
// the Ice run time will install its own internal factory for Preserved upon receiving the
// first instance.
//
- communicator.addObjectFactory(new PreservedFactoryI(), Preserved.ice_staticId());
+ communicator.addValueFactory(new PreservedFactoryI(), Preserved.ice_staticId());
try
{
@@ -3073,7 +3063,7 @@ public class AllTests
// Register a factory in order to substitute our own subclass of PNode. This provides
// an easy way to determine how many unmarshaled instances currently exist.
//
- communicator.addObjectFactory(new NodeFactoryI(), PNode.ice_staticId());
+ communicator.addValueFactory(new NodeFactoryI(), PNode.ice_staticId());
//
// Relay a graph through the server.
diff --git a/java/test/src/main/java/test/Ice/stream/Client.java b/java/test/src/main/java/test/Ice/stream/Client.java
index 9ac989002d2..7087dcc9497 100644
--- a/java/test/src/main/java/test/Ice/stream/Client.java
+++ b/java/test/src/main/java/test/Ice/stream/Client.java
@@ -66,7 +66,7 @@ public class Client extends test.Util.Application
boolean called = false;
}
- private static class TestObjectFactory implements Ice.ObjectFactory
+ private static class TestValueFactory implements Ice.ValueFactory
{
@Override
public Ice.Object
@@ -75,19 +75,13 @@ public class Client extends test.Util.Application
assert(type.equals(MyClass.ice_staticId()));
return new TestObjectReader();
}
-
- @Override
- public void
- destroy()
- {
- }
}
private static class MyInterfaceI extends _MyInterfaceDisp
{
};
- private static class MyInterfaceFactory implements Ice.ObjectFactory
+ private static class MyInterfaceFactory implements Ice.ValueFactory
{
@Override
public Ice.Object
@@ -96,12 +90,6 @@ public class Client extends test.Util.Application
assert(type.equals(_MyInterfaceDisp.ice_staticId()));
return new MyInterfaceI();
}
-
- @Override
- public void
- destroy()
- {
- }
}
private static class TestReadObjectCallback implements Ice.ReadObjectCallback
@@ -116,7 +104,7 @@ public class Client extends test.Util.Application
Ice.Object obj;
}
- private static class MyClassFactoryWrapper implements Ice.ObjectFactory
+ private static class MyClassFactoryWrapper implements Ice.ValueFactory
{
MyClassFactoryWrapper()
{
@@ -130,14 +118,8 @@ public class Client extends test.Util.Application
return _factory.create(type);
}
- @Override
- public void
- destroy()
- {
- }
-
void
- setFactory(Ice.ObjectFactory factory)
+ setFactory(Ice.ValueFactory factory)
{
if(factory == null)
{
@@ -149,7 +131,7 @@ public class Client extends test.Util.Application
}
}
- private Ice.ObjectFactory _factory;
+ private Ice.ValueFactory _factory;
}
@Override
@@ -158,8 +140,8 @@ public class Client extends test.Util.Application
{
Ice.Communicator comm = communicator();
MyClassFactoryWrapper factoryWrapper = new MyClassFactoryWrapper();
- comm.addObjectFactory(factoryWrapper, MyClass.ice_staticId());
- comm.addObjectFactory(new MyInterfaceFactory(), _MyInterfaceDisp.ice_staticId());
+ comm.addValueFactory(factoryWrapper, MyClass.ice_staticId());
+ comm.addValueFactory(new MyInterfaceFactory(), _MyInterfaceDisp.ice_staticId());
Ice.InputStream in;
Ice.OutputStream out;
@@ -759,7 +741,7 @@ public class Client extends test.Util.Application
out.destroy();
in.destroy();
}
-
+
{
MyInterface i = new MyInterfaceI();
out = Ice.Util.createOutputStream(comm);
@@ -796,7 +778,7 @@ public class Client extends test.Util.Application
out.writePendingObjects();
byte[] data = out.finished();
test(writer.called);
- factoryWrapper.setFactory(new TestObjectFactory());
+ factoryWrapper.setFactory(new TestValueFactory());
in = Ice.Util.createInputStream(comm, data);
TestReadObjectCallback cb = new TestReadObjectCallback();
in.readObject(cb);
@@ -835,10 +817,10 @@ public class Client extends test.Util.Application
c.d.put("hi", c);
ex.c = c;
-
+
out.writeException(ex);
byte[] data = out.finished();
-
+
in = Ice.Util.createInputStream(comm, data);
try
{
diff --git a/js/src/Ice/BasicStream.js b/js/src/Ice/BasicStream.js
index 548956fc158..43dbc355fd7 100644
--- a/js/src/Ice/BasicStream.js
+++ b/js/src/Ice/BasicStream.js
@@ -490,7 +490,7 @@ var EncapsDecoder10 = Class(EncapsDecoder, {
//
if(this._typeId == IceObject.ice_staticId())
{
- throw new Ice.NoObjectFactoryException("", mostDerivedId);
+ throw new Ice.NoValueFactoryException("", mostDerivedId);
}
v = this.newInstance(this._typeId);
@@ -508,7 +508,7 @@ var EncapsDecoder10 = Class(EncapsDecoder, {
//
if(!this._sliceObjects)
{
- throw new Ice.NoObjectFactoryException("no object factory found and object slicing is disabled",
+ throw new Ice.NoValueFactoryException("no value factory found and object slicing is disabled",
this._typeId);
}
@@ -793,7 +793,7 @@ var EncapsDecoder11 = Class(EncapsDecoder, {
{
if(this._current.sliceType === SliceType.ObjectSlice)
{
- throw new Ice.NoObjectFactoryException("no object factory found and compact format prevents slicing " +
+ throw new Ice.NoValueFactoryException("no value factory found and compact format prevents slicing " +
"(the sender should use the sliced format instead)",
this._current.typeId);
}
@@ -936,7 +936,7 @@ var EncapsDecoder11 = Class(EncapsDecoder, {
//
if(!this._sliceObjects)
{
- throw new Ice.NoObjectFactoryException("no object factory found and object slicing is disabled",
+ throw new Ice.NoValueFactoryException("no value factory found and object slicing is disabled",
this._current.typeId);
}
@@ -2761,7 +2761,7 @@ var BasicStream = Class({
}
catch(ex)
{
- throw new Ice.NoObjectFactoryException("no object factory", id, ex);
+ throw new Ice.NoValueFactoryException("no value factory", id, ex);
}
return obj;
@@ -2898,7 +2898,7 @@ var defineBuiltinHelper = function(write, read, sz, format, min, max)
writeOpt: function(os, tag, v) { os.writeOptValue(tag, format, write, v); },
readOpt: function(is, tag) { return is.readOptValue(tag, format, read); },
};
-
+
if(min !== undefined && max !== undefined)
{
helper.validate = function(v) {
@@ -2932,13 +2932,13 @@ var MAX_INT32_VALUE = 0x7FFFFFFF;
var MIN_FLOAT32_VALUE = -3.4028234664e+38;
var MAX_FLOAT32_VALUE = 3.4028234664e+38;
-Ice.ByteHelper = defineBuiltinHelper(stream.writeByte, stream.readByte, 1, Ice.OptionalFormat.F1,
+Ice.ByteHelper = defineBuiltinHelper(stream.writeByte, stream.readByte, 1, Ice.OptionalFormat.F1,
MIN_UINT8_VALUE, MAX_UINT8_VALUE);
Ice.ShortHelper = defineBuiltinHelper(stream.writeShort, stream.readShort, 2, Ice.OptionalFormat.F2,
MIN_INT16_VALUE, MAX_INT16_VALUE);
-Ice.IntHelper = defineBuiltinHelper(stream.writeInt, stream.readInt, 4, Ice.OptionalFormat.F4,
+Ice.IntHelper = defineBuiltinHelper(stream.writeInt, stream.readInt, 4, Ice.OptionalFormat.F4,
MIN_INT32_VALUE, MAX_INT32_VALUE);
Ice.FloatHelper = defineBuiltinHelper(stream.writeFloat, stream.readFloat, 4, Ice.OptionalFormat.F4,
@@ -2964,7 +2964,7 @@ Ice.LongHelper.validate = function(v)
//
// For a long to be valid both words must be within the range of UINT32
//
- return v.low >= MIN_UINT32_VALUE && v.low <= MAX_UINT32_VALUE &&
+ return v.low >= MIN_UINT32_VALUE && v.low <= MAX_UINT32_VALUE &&
v.high >= MIN_UINT32_VALUE && v.high <= MAX_UINT32_VALUE;
};
diff --git a/js/src/Ice/Communicator.js b/js/src/Ice/Communicator.js
index 7e2d1eee99c..b522a4c9f09 100644
--- a/js/src/Ice/Communicator.js
+++ b/js/src/Ice/Communicator.js
@@ -117,10 +117,18 @@ var Communicator = Ice.Class({
},
addObjectFactory: function(factory, id)
{
- this._instance.servantFactoryManager().add(factory, id);
+ this._instance.servantFactoryManager().addObjectFactory(factory, id);
},
findObjectFactory: function(id)
{
+ return this._instance.servantFactoryManager().findObjectFactory(id);
+ },
+ addValueFactory: function(factory, id)
+ {
+ this._instance.servantFactoryManager().add(factory, id);
+ },
+ findValueFactory: function(id)
+ {
return this._instance.servantFactoryManager().find(id);
},
getImplicitContext: function()
diff --git a/js/src/Ice/Ice.js b/js/src/Ice/Ice.js
index 31248e043eb..1ef8c2bd5cc 100644
--- a/js/src/Ice/Ice.js
+++ b/js/src/Ice/Ice.js
@@ -35,6 +35,7 @@ module.exports.Ice = __M.require(module,
"../Ice/Router",
"../Ice/Version",
"../Ice/ObjectFactory",
+ "../Ice/ValueFactory",
"../Ice/Buffer",
"../Ice/ArrayUtil",
"../Ice/UnknownSlicedObject",
diff --git a/js/src/Ice/Instance.js b/js/src/Ice/Instance.js
index 7a87146a74e..c8cd21abc2d 100644
--- a/js/src/Ice/Instance.js
+++ b/js/src/Ice/Instance.js
@@ -21,7 +21,7 @@ Ice.__M.require(module,
"../Ice/LocatorManager",
"../Ice/Logger",
"../Ice/ObjectAdapterFactory",
- "../Ice/ObjectFactoryManager",
+ "../Ice/ValueFactoryManager",
"../Ice/OutgoingConnectionFactory",
"../Ice/Promise",
"../Ice/Properties",
@@ -52,7 +52,7 @@ var ImplicitContextI = Ice.ImplicitContextI;
var LocatorManager = Ice.LocatorManager;
var Logger = Ice.Logger;
var ObjectAdapterFactory = Ice.ObjectAdapterFactory;
-var ObjectFactoryManager = Ice.ObjectFactoryManager;
+var ValueFactoryManager = Ice.ValueFactoryManager;
var OutgoingConnectionFactory = Ice.OutgoingConnectionFactory;
var Promise = Ice.Promise;
var Properties = Ice.Properties;
@@ -381,7 +381,7 @@ var Instance = Ice.Class({
this._endpointFactoryManager.add(wssEndpointFactory);
this._outgoingConnectionFactory = new OutgoingConnectionFactory(communicator, this);
- this._servantFactoryManager = new ObjectFactoryManager();
+ this._servantFactoryManager = new ValueFactoryManager();
this._objectAdapterFactory = new ObjectAdapterFactory(this, communicator);
diff --git a/csharp/test/Ice/exceptions/ObjectFactoryI.cs b/js/src/Ice/ValueFactory.js
index fdada7ebf07..ebea4cbfd40 100644
--- a/csharp/test/Ice/exceptions/ObjectFactoryI.cs
+++ b/js/src/Ice/ValueFactory.js
@@ -7,14 +7,11 @@
//
// **********************************************************************
-public sealed class ObjectFactoryI : Ice.ObjectFactory
-{
- public Ice.Object create(string s)
+var Ice = require("../Ice/Class").Ice;
+Ice.ValueFactory = Ice.Class({
+ create: function(type)
{
- return null;
+ throw new Error("not implemented");
}
-
- public void destroy()
- {
- }
-}
+});
+module.exports.Ice = Ice;
diff --git a/js/src/Ice/ObjectFactoryManager.js b/js/src/Ice/ValueFactoryManager.js
index 0036e6b09ec..55efddf9fea 100644
--- a/js/src/Ice/ObjectFactoryManager.js
+++ b/js/src/Ice/ValueFactoryManager.js
@@ -9,7 +9,7 @@
var Ice = require("../Ice/ModuleRegistry").Ice;
Ice.__M.require(module, ["../Ice/Class", "../Ice/HashMap", "../Ice/LocalException"]);
-
+
var HashMap = Ice.HashMap;
var AlreadyRegisteredException = Ice.AlreadyRegisteredException;
var NotRegisteredException = Ice.NotRegisteredException;
@@ -17,10 +17,11 @@ var NotRegisteredException = Ice.NotRegisteredException;
//
// Only for use by Instance
//
-var ObjectFactoryManager = Ice.Class({
+var ValueFactoryManager = Ice.Class({
__init__: function()
{
- this._factoryMap = new HashMap(); // Map<String, ObjectFactory>
+ this._factoryMap = new HashMap(); // Map<String, ValueFactory>
+ this._objectFactoryMap = new HashMap(); // Map<String, ObjectFactory>
},
add: function(factory, id)
{
@@ -30,34 +31,39 @@ var ObjectFactoryManager = Ice.Class({
{
ex = new AlreadyRegisteredException();
ex.id = id;
- ex.kindOfObject = "object factory";
+ ex.kindOfObject = "value factory";
throw ex;
}
this._factoryMap.set(id, factory);
},
- remove: function(id)
+ addObjectFactory: function(factory, id)
{
- var factory, ex;
- factory = this._factoryMap.get(id);
- if(factory === undefined)
+ var o, ex;
+ o = this._factoryMap.get(id);
+ if(o !== undefined)
{
- ex = new NotRegisteredException();
+ ex = new AlreadyRegisteredException();
ex.id = id;
- ex.kindOfObject = "object factory";
+ ex.kindOfObject = "value factory";
throw ex;
}
- this._factoryMap.delete(id);
- factory.destroy();
+ this._factoryMap.set(id, factory);
+ this._objectFactoryMap.set(id, factory);
},
find: function(id)
{
return this._factoryMap.get(id);
},
+ findObjectFactory: function(id)
+ {
+ return this._objectFactoryMap.get(id);
+ },
destroy: function()
{
- var oldMap = this._factoryMap,
+ var oldMap = this._objectFactoryMap,
e = oldMap.entries;
- this._factoryMap = new HashMap(); // Map<String, ObjectFactory>
+ this._factoryMap = new HashMap(); // Map<String, ValueFactory>
+ this._objectFactoryMap = new HashMap(); // Map<String, ObjectFactory>
while(e !== null)
{
@@ -67,5 +73,5 @@ var ObjectFactoryManager = Ice.Class({
}
});
-Ice.ObjectFactoryManager = ObjectFactoryManager;
+Ice.ValueFactoryManager = ValueFactoryManager;
module.exports.Ice = Ice;
diff --git a/js/src/Ice/sources.json b/js/src/Ice/sources.json
index 99cf32a9021..cb3387ea16d 100644
--- a/js/src/Ice/sources.json
+++ b/js/src/Ice/sources.json
@@ -65,7 +65,6 @@
"ObjectAdapterFactory.js",
"ObjectAdapterI.js",
"ObjectFactory.js",
- "ObjectFactoryManager.js",
"ObjectPrx.js",
"OpaqueEndpointI.js",
"Operation.js",
@@ -99,6 +98,8 @@
"TraceUtil.js",
"UnknownSlicedObject.js",
"UUID.js",
+ "ValueFactory.js",
+ "ValueFactoryManager.js",
"WSEndpoint.js",
"WSEndpointFactory.js"],
diff --git a/js/test/Ice/exceptions/Client.js b/js/test/Ice/exceptions/Client.js
index eeded84d58b..53cad9d2f27 100644
--- a/js/test/Ice/exceptions/Client.js
+++ b/js/test/Ice/exceptions/Client.js
@@ -40,19 +40,15 @@
{
};
- var ObjectFactoryI = function()
+ var ValueFactoryI = function()
{
};
- ObjectFactoryI.prototype.create = function(type)
+ ValueFactoryI.prototype.create = function(type)
{
return null;
};
- ObjectFactoryI.prototype.destroy = function()
- {
- };
-
var p = new Ice.Promise();
var test = function(b)
{
@@ -235,12 +231,12 @@
).then(
function()
{
- out.write("testing object factory registration exception... ");
- var of = new ObjectFactoryI();
- communicator.addObjectFactory(of, "::x");
+ out.write("testing value factory registration exception... ");
+ var vf = new ValueFactoryI();
+ communicator.addValueFactory(vf, "::x");
try
{
- communicator.addObjectFactory(of, "::x");
+ communicator.addValueFactory(vf, "::x");
test(false);
}
catch(ex)
diff --git a/js/test/Ice/objects/Client.js b/js/test/Ice/objects/Client.js
index c67ed7bb28a..db27ce73e71 100644
--- a/js/test/Ice/objects/Client.js
+++ b/js/test/Ice/objects/Client.js
@@ -136,16 +136,16 @@
JI.prototype = new Test.J();
JI.prototype.constructor = JI;
- var MyObjectFactory = function()
+ var MyValueFactory = function()
{
- Ice.ObjectFactory.call(this);
+ Ice.ValueFactory.call(this);
};
- MyObjectFactory.prototype = new Ice.ObjectFactory();
+ MyValueFactory.prototype = new Ice.ValueFactory();
- MyObjectFactory.prototype.constructor = MyObjectFactory;
+ MyValueFactory.prototype.constructor = MyValueFactory;
- MyObjectFactory.prototype.create = function(type)
+ MyValueFactory.prototype.create = function(type)
{
switch(type)
{
@@ -175,6 +175,20 @@
return null;
};
+ var MyObjectFactory = function()
+ {
+ Ice.ObjectFactory.call(this);
+ };
+
+ MyObjectFactory.prototype = new Ice.ObjectFactory();
+
+ MyObjectFactory.prototype.constructor = MyObjectFactory;
+
+ MyObjectFactory.prototype.create = function(type)
+ {
+ return null;
+ };
+
MyObjectFactory.prototype.destroy = function()
{
};
@@ -203,17 +217,19 @@
Promise.try(
function()
{
- var factory = new MyObjectFactory();
- communicator.addObjectFactory(factory, "::Test::B");
- communicator.addObjectFactory(factory, "::Test::C");
- communicator.addObjectFactory(factory, "::Test::D");
- communicator.addObjectFactory(factory, "::Test::E");
- communicator.addObjectFactory(factory, "::Test::F");
- communicator.addObjectFactory(factory, "::Test::I");
- communicator.addObjectFactory(factory, "::Test::J");
- communicator.addObjectFactory(factory, "::Test::H");
- communicator.addObjectFactory(factory, "::Test::Inner::A");
- communicator.addObjectFactory(factory, "::Test::Inner::Sub::A");
+ var factory = new MyValueFactory();
+ communicator.addValueFactory(factory, "::Test::B");
+ communicator.addValueFactory(factory, "::Test::C");
+ communicator.addValueFactory(factory, "::Test::D");
+ communicator.addValueFactory(factory, "::Test::E");
+ communicator.addValueFactory(factory, "::Test::F");
+ communicator.addValueFactory(factory, "::Test::I");
+ communicator.addValueFactory(factory, "::Test::J");
+ communicator.addValueFactory(factory, "::Test::H");
+ communicator.addValueFactory(factory, "::Test::Inner::A");
+ communicator.addValueFactory(factory, "::Test::Inner::Sub::A");
+
+ communicator.addObjectFactory(new MyObjectFactory(), "TestOF");
out.write("testing stringToProxy... ");
ref = "initial:default -p 12010";
@@ -508,6 +524,14 @@
{
test(ex.reason == "Inner::Sub::Ex");
out.writeLine("ok");
+
+ out.write("testing getting ObjectFactory... ");
+ test(communicator.findObjectFactory("TestOF") !== null);
+ out.writeLine("ok");
+ out.write("testing getting ObjectFactory as ValueFactory... ");
+ test(communicator.findValueFactory("TestOF") !== null);
+ out.writeLine("ok");
+
return initial.shutdown();
}
).then(
diff --git a/js/test/Ice/slicing/objects/Client.js b/js/test/Ice/slicing/objects/Client.js
index df5a684561e..7c9dae3b081 100644
--- a/js/test/Ice/slicing/objects/Client.js
+++ b/js/test/Ice/slicing/objects/Client.js
@@ -24,7 +24,7 @@
}
});
- var PreservedFactoryI = Ice.Class(Ice.ObjectFactory,
+ var PreservedFactoryI = Ice.Class(Ice.ValueFactory,
{
create: function(id)
{
@@ -33,9 +33,6 @@
return new PreservedI();
}
return null;
- },
- destroy: function()
- {
}
});
@@ -140,7 +137,7 @@
function(ex)
{
test(ex instanceof Ice.OperationNotExistException ||
- ex instanceof Ice.NoObjectFactoryException);
+ ex instanceof Ice.NoValueFactoryException);
});
}
}
@@ -161,7 +158,7 @@
},
function(ex)
{
- test(ex instanceof Ice.NoObjectFactoryException);
+ test(ex instanceof Ice.NoValueFactoryException);
test(prx.ice_getEncodingVersion().equals(Ice.Encoding_1_0));
}
).then(
@@ -682,7 +679,7 @@
// the Ice run time will install its own internal factory for Preserved upon receiving the
// first instance.
//
- communicator.addObjectFactory(new PreservedFactoryI(), Test.Preserved.ice_staticId());
+ communicator.addValueFactory(new PreservedFactoryI(), Test.Preserved.ice_staticId());
//
// Server knows the most-derived class PDerived.
diff --git a/objective-c/include/objc/Ice/ObjectFactory.h b/objective-c/include/objc/Ice/ObjectFactory.h
index 8463e895780..31c0b4ff72d 100644
--- a/objective-c/include/objc/Ice/ObjectFactory.h
+++ b/objective-c/include/objc/Ice/ObjectFactory.h
@@ -13,4 +13,3 @@ ICE_API @protocol ICEObjectFactory <NSObject>
-(ICEObject*) create:(NSString*)sliceId NS_RETURNS_RETAINED;
-(void) destroy;
@end
-
diff --git a/objective-c/include/objc/Ice/ValueFactory.h b/objective-c/include/objc/Ice/ValueFactory.h
new file mode 100644
index 00000000000..57fa2c25b42
--- /dev/null
+++ b/objective-c/include/objc/Ice/ValueFactory.h
@@ -0,0 +1,14 @@
+// **********************************************************************
+//
+// 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.
+//
+// **********************************************************************
+
+#import <objc/Ice/Config.h>
+
+ICE_API @protocol ICEValueFactory <NSObject>
+-(ICEObject*) create:(NSString*)sliceId NS_RETURNS_RETAINED;
+@end
diff --git a/objective-c/src/Ice/CommunicatorI.h b/objective-c/src/Ice/CommunicatorI.h
index e900d52601b..f1900a4f0e9 100644
--- a/objective-c/src/Ice/CommunicatorI.h
+++ b/objective-c/src/Ice/CommunicatorI.h
@@ -19,6 +19,7 @@
@interface ICECommunicator : ICELocalObject<ICECommunicator>
{
+ NSMutableDictionary* valueFactories_;
NSMutableDictionary* objectFactories_;
NSDictionary* prefixTable_;
NSMutableDictionary* adminFacets_;
diff --git a/objective-c/src/Ice/CommunicatorI.mm b/objective-c/src/Ice/CommunicatorI.mm
index 6b19bbc862a..26f70c46522 100644
--- a/objective-c/src/Ice/CommunicatorI.mm
+++ b/objective-c/src/Ice/CommunicatorI.mm
@@ -24,10 +24,12 @@
#include <Ice/Router.h>
#include <Ice/Locator.h>
#include <Ice/ObjectFactory.h>
+#include <Ice/ValueFactory.h>
#import <objc/Ice/Router.h>
#import <objc/Ice/Locator.h>
#import <objc/Ice/ObjectFactory.h>
+#import <objc/Ice/ValueFactory.h>
#import <objc/runtime.h>
@@ -36,7 +38,7 @@
namespace IceObjC
{
-class UnknownSlicedObjectFactoryI : public Ice::ObjectFactory
+class UnknownSlicedValueFactoryI : public Ice::ValueFactory
{
public:
@@ -45,30 +47,25 @@ public:
{
ICEUnknownSlicedObject* obj = [[ICEUnknownSlicedObject alloc] init];
Ice::ObjectPtr o = [ICEInputStream createObjectReader:obj];
- [obj release];
+ [obj release];
return o;
}
-
- virtual void
- destroy()
- {
- }
};
-class ObjectFactoryI : public Ice::ObjectFactory
+class ValueFactoryI : public Ice::ValueFactory
{
public:
// We must explicitely CFRetain/CFRelease so that the garbage
// collector does not trash the dictionaries.
- ObjectFactoryI(NSDictionary* factories, NSDictionary* prefixTable) :
+ ValueFactoryI(NSDictionary* factories, NSDictionary* prefixTable) :
_factories(factories), _prefixTable(prefixTable)
{
CFRetain(_factories);
CFRetain(_prefixTable);
}
- ~ObjectFactoryI()
+ ~ValueFactoryI()
{
CFRelease(_factories);
CFRelease(_prefixTable);
@@ -102,7 +99,7 @@ public:
Class c = objc_lookUpClass(tId.c_str());
if(c == nil)
{
- return 0; // No object factory.
+ return 0; // No value factory.
}
if([c isSubclassOfClass:[ICEObject class]])
{
@@ -114,7 +111,7 @@ public:
if(obj != nil)
{
o = [ICEInputStream createObjectReader:obj];
- [obj release];
+ [obj release];
}
return o;
}
@@ -129,17 +126,8 @@ public:
return nil; // Keep the compiler happy.
}
- virtual void
- destroy()
- {
- for(NSString* k in _factories)
- {
- [[_factories objectForKey:k] destroy];
- }
- }
-
private:
-
+
NSDictionary* _factories;
NSDictionary* _prefixTable;
};
@@ -175,6 +163,7 @@ private:
@implementation ICECommunicator
-(void)setup:(NSDictionary*)prefixTable
{
+ valueFactories_ = [[NSMutableDictionary alloc] init];
objectFactories_ = [[NSMutableDictionary alloc] init];
if(prefixTable)
{
@@ -185,12 +174,13 @@ private:
prefixTable_ = [ICEInternalPrefixTable newPrefixTable];
}
adminFacets_ = [[NSMutableDictionary alloc] init];
- COMMUNICATOR->addObjectFactory(new IceObjC::UnknownSlicedObjectFactoryI, "::Ice::Object");
- COMMUNICATOR->addObjectFactory(new IceObjC::ObjectFactoryI(objectFactories_, prefixTable_), "");
+ COMMUNICATOR->addValueFactory(new IceObjC::UnknownSlicedValueFactoryI, "::Ice::Object");
+ COMMUNICATOR->addValueFactory(new IceObjC::ValueFactoryI(valueFactories_, prefixTable_), "");
}
-(void) dealloc
{
[prefixTable_ release];
+ [valueFactories_ release];
[objectFactories_ release];
[adminFacets_ release];
[super dealloc];
@@ -329,7 +319,7 @@ private:
NSException* nsex = nil;
try
{
- return [toNSDictionary(COMMUNICATOR->proxyToProperty([(ICEObjectPrx*)prx objectPrx__],
+ return [toNSDictionary(COMMUNICATOR->proxyToProperty([(ICEObjectPrx*)prx objectPrx__],
fromNSString(property))) autorelease];
}
catch(const std::exception& ex)
@@ -426,20 +416,37 @@ private:
}
-(void) addObjectFactory:(id<ICEObjectFactory>)factory sliceId:(NSString*)sliceId
{
- @synchronized(objectFactories_)
+ @synchronized(valueFactories_)
{
[objectFactories_ setObject:factory forKey:sliceId];
+ [valueFactories_ setObject:factory forKey:sliceId];
}
}
-(id<ICEObjectFactory>) findObjectFactory:(NSString*)sliceId
{
- @synchronized(objectFactories_)
+ @synchronized(valueFactories_)
{
return [objectFactories_ objectForKey:sliceId];
}
return nil; // Keep the compiler happy.
}
+-(void) addValueFactory:(id<ICEValueFactory>)factory sliceId:(NSString*)sliceId
+{
+ @synchronized(valueFactories_)
+ {
+ [valueFactories_ setObject:factory forKey:sliceId];
+ }
+}
+-(id<ICEValueFactory>) findValueFactory:(NSString*)sliceId
+{
+ @synchronized(valueFactories_)
+ {
+ return [valueFactories_ objectForKey:sliceId];
+ }
+ return nil; // Keep the compiler happy.
+}
+
-(id<ICEImplicitContext>) getImplicitContext
{
return [ICEImplicitContext implicitContextWithImplicitContext:COMMUNICATOR->getImplicitContext().get()];
@@ -566,21 +573,21 @@ private:
}
-(id<ICEAsyncResult>) begin_flushBatchRequests
{
- return beginCppCall(^(Ice::AsyncResultPtr& result)
+ return beginCppCall(^(Ice::AsyncResultPtr& result)
{
- result = COMMUNICATOR->begin_flushBatchRequests();
+ result = COMMUNICATOR->begin_flushBatchRequests();
});
}
-(id<ICEAsyncResult>) begin_flushBatchRequests:(void(^)(ICEException*))exception
{
return [self begin_flushBatchRequests:exception sent:nil];
}
--(id<ICEAsyncResult>) begin_flushBatchRequests:(void(^)(ICEException*))exception sent:(void(^)(BOOL))sent
+-(id<ICEAsyncResult>) begin_flushBatchRequests:(void(^)(ICEException*))exception sent:(void(^)(BOOL))sent
{
- return beginCppCall(^(Ice::AsyncResultPtr& result, const Ice::CallbackPtr& cb)
+ return beginCppCall(^(Ice::AsyncResultPtr& result, const Ice::CallbackPtr& cb)
{
- result = COMMUNICATOR->begin_flushBatchRequests(cb);
- },
+ result = COMMUNICATOR->begin_flushBatchRequests(cb);
+ },
^(const Ice::AsyncResultPtr& result) {
COMMUNICATOR->end_flushBatchRequests(result);
},
@@ -588,9 +595,9 @@ private:
}
-(void) end_flushBatchRequests:(id<ICEAsyncResult>)result
{
- endCppCall(^(const Ice::AsyncResultPtr& r)
+ endCppCall(^(const Ice::AsyncResultPtr& r)
{
- COMMUNICATOR->end_flushBatchRequests(r);
+ COMMUNICATOR->end_flushBatchRequests(r);
}, result);
}
-(id<ICEObjectPrx>) createAdmin:(id<ICEObjectAdapter>)adapter adminId:(ICEIdentity*)adminId
diff --git a/objective-c/src/Ice/Exception.mm b/objective-c/src/Ice/Exception.mm
index 97f265c407d..ba26db145cc 100644
--- a/objective-c/src/Ice/Exception.mm
+++ b/objective-c/src/Ice/Exception.mm
@@ -864,7 +864,7 @@ localExceptionToString(const Ice::LocalException& ex)
}
@end
-@implementation ICENoObjectFactoryException (ICEInternal)
+@implementation ICENoValueFactoryException (ICEInternal)
-(id)initWithLocalException:(const Ice::LocalException&)ex
{
self = [super initWithLocalException:ex];
@@ -872,14 +872,14 @@ localExceptionToString(const Ice::LocalException& ex)
{
return nil;
}
- NSAssert(dynamic_cast<const Ice::NoObjectFactoryException*>(&ex), @"invalid local exception type");
- const Ice::NoObjectFactoryException& localEx = dynamic_cast<const Ice::NoObjectFactoryException&>(ex);
+ NSAssert(dynamic_cast<const Ice::NoValueFactoryException*>(&ex), @"invalid local exception type");
+ const Ice::NoValueFactoryException& localEx = dynamic_cast<const Ice::NoValueFactoryException&>(ex);
type = toNSString(localEx.type);
return self;
}
-(void) rethrowCxx
{
- throw Ice::NoObjectFactoryException(file, line, fromNSString([self reason_]), fromNSString(type));
+ throw Ice::NoValueFactoryException(file, line, fromNSString([self reason_]), fromNSString(type));
}
@end
diff --git a/objective-c/src/Ice/Makefile b/objective-c/src/Ice/Makefile
index 4d1c8f92c92..cd1c5e0b9fc 100644
--- a/objective-c/src/Ice/Makefile
+++ b/objective-c/src/Ice/Makefile
@@ -122,6 +122,8 @@ $(libdir)/$(LIBNAME): $(libdir)/$(SONAME)
$(HDIR)/ObjectFactory.h ObjectFactory.m:
@echo
+$(HDIR)/ValueFactory.h ValueFactory.m:
+ @echo
install:: all
$(call installlib,$(install_libdir),$(libdir),$(LIBFILENAME),$(SONAME),$(LIBNAME))
diff --git a/objective-c/test/Ice/objects/AllTests.m b/objective-c/test/Ice/objects/AllTests.m
index 47c9e574d91..4c296575049 100644
--- a/objective-c/test/Ice/objects/AllTests.m
+++ b/objective-c/test/Ice/objects/AllTests.m
@@ -510,5 +510,15 @@ objectsAllTests(id<ICECommunicator> communicator, BOOL collocated)
tprintf("ok\n");
}
+ {
+ tprintf("testing getting ObjectFactory... ");
+ test([communicator findObjectFactory:@"TestOF"] != nil);
+ tprintf("ok\n");
+
+ tprintf("testing getting ObjectFactory as ValueFactory... ");
+ test([communicator findValueFactory:@"TestOF"] != nil);
+ tprintf("ok\n");
+ }
+
return initial;
}
diff --git a/objective-c/test/Ice/objects/Client.m b/objective-c/test/Ice/objects/Client.m
index aeabb134b02..7e99482fa53 100644
--- a/objective-c/test/Ice/objects/Client.m
+++ b/objective-c/test/Ice/objects/Client.m
@@ -15,10 +15,10 @@
# import <Foundation/NSGarbageCollector.h>
#endif
-@interface ClientMyObjectFactory : NSObject<ICEObjectFactory>
+@interface ClientMyValueFactory : NSObject<ICEValueFactory>
@end
-@implementation ClientMyObjectFactory
+@implementation ClientMyValueFactory
// Note that the object factory must not autorelease the
// returned objects.
@@ -62,6 +62,17 @@
}
return nil;
}
+@end
+
+@interface ClientMyObjectFactory : NSObject<ICEObjectFactory>
+@end
+
+@implementation ClientMyObjectFactory
+
+-(ICEObject*) create:(NSString*)type
+{
+ return nil;
+}
-(void) destroy
{
@@ -72,16 +83,19 @@
static int
run(id<ICECommunicator> communicator)
{
- id<ICEObjectFactory> factory = ICE_AUTORELEASE([[ClientMyObjectFactory alloc] init]);
-
- [communicator addObjectFactory:factory sliceId:@"::Test::B"];
- [communicator addObjectFactory:factory sliceId:@"::Test::C"];
- [communicator addObjectFactory:factory sliceId:@"::Test::D"];
- [communicator addObjectFactory:factory sliceId:@"::Test::E"];
- [communicator addObjectFactory:factory sliceId:@"::Test::F"];
- [communicator addObjectFactory:factory sliceId:@"::Test::I"];
- [communicator addObjectFactory:factory sliceId:@"::Test::J"];
- [communicator addObjectFactory:factory sliceId:@"::Test::H"];
+ id<ICEValueFactory> factory = ICE_AUTORELEASE([[ClientMyValueFactory alloc] init]);
+
+ [communicator addValueFactory:factory sliceId:@"::Test::B"];
+ [communicator addValueFactory:factory sliceId:@"::Test::C"];
+ [communicator addValueFactory:factory sliceId:@"::Test::D"];
+ [communicator addValueFactory:factory sliceId:@"::Test::E"];
+ [communicator addValueFactory:factory sliceId:@"::Test::F"];
+ [communicator addValueFactory:factory sliceId:@"::Test::I"];
+ [communicator addValueFactory:factory sliceId:@"::Test::J"];
+ [communicator addValueFactory:factory sliceId:@"::Test::H"];
+
+ id<ICEObjectFactory> objectFactory = ICE_AUTORELEASE([[ClientMyObjectFactory alloc] init]);
+ [communicator addObjectFactory:objectFactory sliceId:@"TestOF" ];
id<TestObjectsInitialPrx> objectsAllTests(id<ICECommunicator>, bool);
id<TestObjectsInitialPrx> initial = objectsAllTests(communicator, NO);
diff --git a/objective-c/test/Ice/objects/Collocated.m b/objective-c/test/Ice/objects/Collocated.m
index 1506c1c3293..c43e5f47560 100644
--- a/objective-c/test/Ice/objects/Collocated.m
+++ b/objective-c/test/Ice/objects/Collocated.m
@@ -11,10 +11,10 @@
#import <TestCommon.h>
#import <objects/TestI.h>
-@interface CollocatedMyObjectFactory : NSObject<ICEObjectFactory>
+@interface CollocatedMyValueFactory : NSObject<ICEValueFactory>
@end
-@implementation CollocatedMyObjectFactory
+@implementation CollocatedMyValueFactory
// Note that the object factory must not autorelease the
// returned objects.
@@ -58,6 +58,17 @@
}
return nil;
}
+@end
+
+@interface ClientMyObjectFactory : NSObject<ICEObjectFactory>
+@end
+
+@implementation ClientMyObjectFactory
+
+-(ICEObject*) create:(NSString*)type
+{
+ return nil;
+}
-(void) destroy
{
@@ -68,16 +79,19 @@
static int
run(id<ICECommunicator> communicator)
{
- id<ICEObjectFactory> factory = ICE_AUTORELEASE([[CollocatedMyObjectFactory alloc] init]);
-
- [communicator addObjectFactory:factory sliceId:@"::Test::B"];
- [communicator addObjectFactory:factory sliceId:@"::Test::C"];
- [communicator addObjectFactory:factory sliceId:@"::Test::D"];
- [communicator addObjectFactory:factory sliceId:@"::Test::E"];
- [communicator addObjectFactory:factory sliceId:@"::Test::F"];
- [communicator addObjectFactory:factory sliceId:@"::Test::I"];
- [communicator addObjectFactory:factory sliceId:@"::Test::J"];
- [communicator addObjectFactory:factory sliceId:@"::Test::H"];
+ id<ICEValueFactory> factory = ICE_AUTORELEASE([[CollocatedMyValueFactory alloc] init]);
+
+ [communicator addValueFactory:factory sliceId:@"::Test::B"];
+ [communicator addValueFactory:factory sliceId:@"::Test::C"];
+ [communicator addValueFactory:factory sliceId:@"::Test::D"];
+ [communicator addValueFactory:factory sliceId:@"::Test::E"];
+ [communicator addValueFactory:factory sliceId:@"::Test::F"];
+ [communicator addValueFactory:factory sliceId:@"::Test::I"];
+ [communicator addValueFactory:factory sliceId:@"::Test::J"];
+ [communicator addValueFactory:factory sliceId:@"::Test::H"];
+
+ id<ICEObjectFactory> objectFactory = ICE_AUTORELEASE([[ClientMyObjectFactory alloc] init]);
+ [communicator addObjectFactory:objectFactory sliceId:@"TestOF" ];
[[communicator getProperties] setProperty:@"TestAdapter.Endpoints" value:@"default -p 12010"];
id<ICEObjectAdapter> adapter = [communicator createObjectAdapter:@"TestAdapter"];
diff --git a/objective-c/test/Ice/objects/Server.m b/objective-c/test/Ice/objects/Server.m
index a8431a61509..006b7653ece 100644
--- a/objective-c/test/Ice/objects/Server.m
+++ b/objective-c/test/Ice/objects/Server.m
@@ -11,10 +11,10 @@
#import <TestCommon.h>
#import <objects/TestI.h>
-@interface ServerMyObjectFactory : NSObject<ICEObjectFactory>
+@interface ServerMyValueFactory : NSObject<ICEValueFactory>
@end
-@implementation ServerMyObjectFactory
+@implementation ServerMyValueFactory
// Note that the object factory must not autorelease the
// returned objects.
-(ICEObject*) create:(NSString*)type
@@ -47,11 +47,11 @@
static int
run(id<ICECommunicator> communicator)
{
- id<ICEObjectFactory> factory = ICE_AUTORELEASE([[ServerMyObjectFactory alloc] init]);
+ id<ICEValueFactory> factory = ICE_AUTORELEASE([[ServerMyValueFactory alloc] init]);
- [communicator addObjectFactory:factory sliceId:@"::Test::I"];
- [communicator addObjectFactory:factory sliceId:@"::Test::J"];
- [communicator addObjectFactory:factory sliceId:@"::Test::H"];
+ [communicator addValueFactory:factory sliceId:@"::Test::I"];
+ [communicator addValueFactory:factory sliceId:@"::Test::J"];
+ [communicator addValueFactory:factory sliceId:@"::Test::H"];
[[communicator getProperties] setProperty:@"TestAdapter.Endpoints" value:@"default -p 12010"];
id<ICEObjectAdapter> adapter = [communicator createObjectAdapter:@"TestAdapter"];
diff --git a/objective-c/test/Ice/optional/AllTests.m b/objective-c/test/Ice/optional/AllTests.m
index 8e26cfeb270..573d49fb029 100644
--- a/objective-c/test/Ice/optional/AllTests.m
+++ b/objective-c/test/Ice/optional/AllTests.m
@@ -212,7 +212,7 @@
}
@end
-@interface FactoryI : NSObject<ICEObjectFactory>
+@interface FactoryI : NSObject<ICEValueFactory>
{
BOOL enabled_;
}
@@ -267,9 +267,6 @@
return nil;
}
--(void) destroy
-{
-}
-(void) setEnabled:(BOOL)enabled
{
self->enabled_ = enabled;
@@ -280,7 +277,7 @@ id<TestOptionalInitialPrx>
optionalAllTests(id<ICECommunicator> communicator)
{
FactoryI* factory = [FactoryI factoryI];
- [communicator addObjectFactory:factory sliceId:@""];
+ [communicator addValueFactory:factory sliceId:@""];
tprintf("testing stringToProxy... ");
NSString* sref = @"initial:default -p 12010";
diff --git a/objective-c/test/Ice/slicing/objects/AllTests.m b/objective-c/test/Ice/slicing/objects/AllTests.m
index 979c9f11e73..7118b968a9b 100644
--- a/objective-c/test/Ice/slicing/objects/AllTests.m
+++ b/objective-c/test/Ice/slicing/objects/AllTests.m
@@ -139,7 +139,7 @@
-(void) SBSUnknownDerivedAsSBaseCompactException:(ICEException*)exc
{
- test([[exc ice_name] isEqualToString:@"Ice::NoObjectFactoryException"]);
+ test([[exc ice_name] isEqualToString:@"Ice::NoValueFactoryException"]);
[self called];
}
@@ -150,7 +150,7 @@
-(void) SUnknownAsObjectException10:(ICEException*)exc
{
- test([[exc ice_name] isEqualToString:@"Ice::NoObjectFactoryException"]);
+ test([[exc ice_name] isEqualToString:@"Ice::NoValueFactoryException"]);
[self called];
}
@@ -728,7 +728,7 @@ slicingObjectsAllTests(id<ICECommunicator> communicator)
@catch(const ICEOperationNotExistException*)
{
}
- @catch(const ICENoObjectFactoryException*)
+ @catch(const ICENoValueFactoryException*)
{
// Expected.
}
@@ -778,7 +778,7 @@ slicingObjectsAllTests(id<ICECommunicator> communicator)
test([[((ICEUnknownSlicedObject*)o) getUnknownTypeId] isEqualToString:@"::Test::SUnknown"]);
[test checkSUnknown:o];
}
- @catch(ICENoObjectFactoryException*)
+ @catch(ICENoValueFactoryException*)
{
test([[test ice_getEncodingVersion] isEqual:ICEEncoding_1_0]);
}
diff --git a/objective-c/test/Ice/stream/Client.m b/objective-c/test/Ice/stream/Client.m
index 415d113787e..a05ca4ecf9c 100644
--- a/objective-c/test/Ice/stream/Client.m
+++ b/objective-c/test/Ice/stream/Client.m
@@ -22,7 +22,7 @@ run(id<ICECommunicator> communicator)
// Test the stream api.
//
tprintf("testing primitive types... ");
-
+
{
NSData* byte = [NSData data];
in = [ICEUtil createInputStream:communicator data:byte];
@@ -144,9 +144,9 @@ run(id<ICECommunicator> communicator)
}
tprintf("ok\n");
-
+
tprintf("testing constructed types... ");
-
+
{
out = [ICEUtil createOutputStream:communicator];
[TestStreamMyEnumHelper write:@(TestStreamenum3) stream:out];
@@ -537,7 +537,7 @@ run(id<ICECommunicator> communicator)
ICEDouble doubleS[] = { 1, 2, 3, 4 };
c.seq7 = [NSMutableData dataWithBytes:doubleS length:sizeof(doubleS)];
-
+
c.seq8 = [ICEMutableStringSeq array];
[(ICEMutableStringSeq*)c.seq8 addObject:@"string1"];
[(ICEMutableStringSeq*)c.seq8 addObject:@"string2"];
@@ -546,7 +546,7 @@ run(id<ICECommunicator> communicator)
TestStreamMyEnum enumS[] = { TestStreamenum3, TestStreamenum2, TestStreamenum1 };
c.seq9 = [NSMutableData dataWithBytes:enumS length:sizeof(enumS)];
-
+
c.d = [NSDictionary dictionaryWithObject:[TestStreamMyClass myClass] forKey:@"hi"];
[arr addObject:c];
}
@@ -583,7 +583,7 @@ run(id<ICECommunicator> communicator)
f.c = nil;
f.o = nil;
}
-
+
TestStreamMutableMyClassSS* arrS = [TestStreamMutableMyClassSS array];
[arrS addObject:arr];
[arrS addObject:[TestStreamMyClassS array]];
@@ -677,7 +677,7 @@ run(id<ICECommunicator> communicator)
ICEDouble doubleS[] = { 1, 2, 3, 4 };
c.seq7 = [NSMutableData dataWithBytes:doubleS length:sizeof(doubleS)];
-
+
c.seq8 = [ICEMutableStringSeq array];
[(ICEMutableStringSeq*)c.seq8 addObject:@"string1"];
[(ICEMutableStringSeq*)c.seq8 addObject:@"string2"];
@@ -686,7 +686,7 @@ run(id<ICECommunicator> communicator)
TestStreamMyEnum enumS[] = { TestStreamenum3, TestStreamenum2, TestStreamenum1 };
c.seq9 = [NSMutableData dataWithBytes:enumS length:sizeof(enumS)];
-
+
c.d = [NSDictionary dictionaryWithObject:[TestStreamMyClass myClass] forKey:@"hi"];
ex.c = c;
@@ -790,11 +790,11 @@ run(id<ICECommunicator> communicator)
TestStreamStringMyClassD* dict2 = [TestStreamStringMyClassDHelper read:in];
[in readPendingObjects];
test([dict2 count] == [dict count]);
- test([dict2 objectForKey:@"key1"] != nil &&
+ test([dict2 objectForKey:@"key1"] != nil &&
((TestStreamMyClass*)[dict2 objectForKey:@"key1"]).s.e == TestStreamenum2);
- test([dict2 objectForKey:@"key2"] != nil &&
+ test([dict2 objectForKey:@"key2"] != nil &&
((TestStreamMyClass*)[dict2 objectForKey:@"key2"]).s.e == TestStreamenum3);
-
+
}
{
@@ -937,10 +937,10 @@ main(int argc, char* argv[])
initData.properties = defaultClientProperties(&argc, argv);
#if TARGET_OS_IPHONE
initData.prefixTable__ = [NSDictionary dictionaryWithObjectsAndKeys:
- @"TestStream", @"::Test",
- @"TestStreamSub", @"::Test::Sub",
- @"TestStream2", @"::Test2",
- @"TestStream2Sub2", @"::Test2::Sub2",
+ @"TestStream", @"::Test",
+ @"TestStreamSub", @"::Test::Sub",
+ @"TestStream2", @"::Test2",
+ @"TestStream2Sub2", @"::Test2::Sub2",
nil];
#endif
communicator = [ICEUtil createCommunicator:&argc argv:argv initData:initData];
diff --git a/php/lib/Ice.php b/php/lib/Ice.php
index bab957ad054..8c7ced4feec 100644
--- a/php/lib/Ice.php
+++ b/php/lib/Ice.php
@@ -128,6 +128,11 @@ interface Ice_ObjectFactory
public function destroy();
}
+interface Ice_ValueFactory
+{
+ public function create($id);
+}
+
class Ice_InitializationData
{
public function __construct($properties=null, $logger=null)
@@ -170,6 +175,7 @@ require_once 'Ice/EndpointTypes.php';
require_once 'Ice/LocalException.php';
require_once 'Ice/Locator.php';
require_once 'Ice/ObjectFactory.php';
+require_once 'Ice/ValueFactory.php';
require_once 'Ice/Process.php';
require_once 'Ice/Router.php';
require_once 'Ice/Version.php';
diff --git a/php/lib/Ice_ns.php b/php/lib/Ice_ns.php
index e52e3bee4e0..90234ed5691 100644
--- a/php/lib/Ice_ns.php
+++ b/php/lib/Ice_ns.php
@@ -133,6 +133,11 @@ namespace Ice
public function destroy();
}
+ interface VaueFactory
+ {
+ public function create($id);
+ }
+
class InitializationData
{
public function __construct($properties=null, $logger=null)
@@ -178,6 +183,7 @@ require_once 'Ice/EndpointTypes.php';
require_once 'Ice/LocalException.php';
require_once 'Ice/Locator.php';
require_once 'Ice/ObjectFactory.php';
+require_once 'Ice/ValueFactory.php';
require_once 'Ice/Process.php';
require_once 'Ice/Router.php';
require_once 'Ice/Version.php';
diff --git a/php/lib/Makefile b/php/lib/Makefile
index 6c5ecbeed22..6896425aa51 100644
--- a/php/lib/Makefile
+++ b/php/lib/Makefile
@@ -48,7 +48,8 @@ ICE_SRCS = Ice/LocalException.php \
Ice/Version.php \
Ice/InstrumentationF.php \
Ice/Instrumentation.php \
- Ice/Metrics.php
+ Ice/Metrics.php \
+ Ice/ValueFactory.php
#
# IMPORTANT: If you add or remove Slice files, you also need to check Glacier2.php!
@@ -115,7 +116,7 @@ endif
all:: $(ALL_SRCS)
-SLICE2PHPFLAGS += --ice
+SLICE2PHPFLAGS += --ice
Ice/%.php: $(slicedir)/Ice/%.ice $(SLICE2PHP) $(SLICEPARSERLIB)
@mkdir -p $(notdir $(<D))
diff --git a/php/lib/Makefile.mak b/php/lib/Makefile.mak
index ec9fe5e3701..565af1f6840 100644
--- a/php/lib/Makefile.mak
+++ b/php/lib/Makefile.mak
@@ -48,7 +48,8 @@ ICE_SRCS = Ice\LocalException.php \
Ice\Version.php \
Ice\InstrumentationF.php \
Ice\Instrumentation.php \
- Ice\Metrics.php
+ Ice\Metrics.php \
+ Ice\ValueFactory.php
#
# IMPORTANT: If you add or remove Slice files, you also need to check Glacier2.php!
diff --git a/php/src/IcePHP/Communicator.cpp b/php/src/IcePHP/Communicator.cpp
index e0c7394a73b..f72e8740fc7 100644
--- a/php/src/IcePHP/Communicator.cpp
+++ b/php/src/IcePHP/Communicator.cpp
@@ -52,6 +52,7 @@ public:
typedef IceUtil::Handle<ActiveCommunicator> ActiveCommunicatorPtr;
typedef std::map<std::string, zval*> ObjectFactoryMap;
+typedef std::map<std::string, zval*> ValueFactoryMap;
class CommunicatorInfoI : public CommunicatorInfo
{
@@ -66,23 +67,29 @@ public:
virtual Ice::CommunicatorPtr getCommunicator() const;
bool addObjectFactory(const std::string&, zval* TSRMLS_DC);
+ bool addValueFactory(const std::string&, zval* TSRMLS_DC);
+
bool findObjectFactory(const std::string&, zval* TSRMLS_DC);
+ bool findValueFactory(const std::string&, zval* TSRMLS_DC);
+
void destroyObjectFactories(TSRMLS_D);
+ void destroyValueFactories(TSRMLS_D);
const ActiveCommunicatorPtr ac;
const zval zv;
ObjectFactoryMap objectFactories;
+ ValueFactoryMap valueFactories;
};
typedef IceUtil::Handle<CommunicatorInfoI> CommunicatorInfoIPtr;
//
-// Each PHP request has its own set of object factories. More precisely, there is
-// an object factory map for each communicator that is created by a PHP request.
-// The factory class defined below delegates the create/destroy methods to PHP
-// objects supplied by the application. An instance of this class is installed
-// as the communicator's default object factory, and the class holds a reference
-// to its communicator. When create is invoked, the class resolves the appropriate
-// PHP object as follows:
+// Each PHP request has its own set of value factories. More precisely, there is
+// a value factory map for each communicator that is created by a PHP request.
+// The factory class defined below delegates the create (and destory in the case
+// of an object factory) methods to PHP objects supplied by the application.
+// An instance of this class is installed as the communicator's default object
+// factory, and the class holds a reference to its communicator. When create is
+// invoked, the class resolves the appropriate PHP object as follows:
//
// * Using its communicator reference as the key, look up the corresponding
// CommunicatorInfoI object in the request-specific communicator map.
@@ -90,6 +97,9 @@ typedef IceUtil::Handle<CommunicatorInfoI> CommunicatorInfoIPtr;
// * In the object factory map held by the CommunicatorInfoI object, look for a
// PHP factory object using the same algorithm as the Ice core.
//
+// There is also an object factory map. Anything added to this map is also added
+// to the value factory map, but not vice versa.
+//
class ObjectFactoryI : public Ice::ObjectFactory
{
public:
@@ -154,7 +164,7 @@ public:
{
_registeredCommunicatorsMutex = new IceUtil::Mutex();
}
-
+
~Init()
{
delete _registeredCommunicatorsMutex;
@@ -195,9 +205,10 @@ ZEND_METHOD(Ice_Communicator, destroy)
}
//
- // We need to destroy any object factories installed by this request.
+ // We need to destroy any object|value factories installed by this request.
//
_this->destroyObjectFactories(TSRMLS_C);
+ _this->destroyValueFactories(TSRMLS_C);
Ice::CommunicatorPtr c = _this->getCommunicator();
assert(c);
@@ -334,7 +345,7 @@ ZEND_METHOD(Ice_Communicator, proxyToProperty)
RETURN_NULL();
}
assert(prx);
-
+
Ice::PropertyDict val = _this->getCommunicator()->proxyToProperty(prx, prefix);
if(!createStringMap(return_value, val TSRMLS_CC))
{
@@ -441,6 +452,35 @@ ZEND_METHOD(Ice_Communicator, addObjectFactory)
}
}
+ZEND_METHOD(Ice_Communicator, addValueFactory)
+{
+ CommunicatorInfoIPtr _this = Wrapper<CommunicatorInfoIPtr>::value(getThis() TSRMLS_CC);
+ assert(_this);
+
+ zend_class_entry* factoryClass = idToClass("Ice::ValueFactory" TSRMLS_CC);
+ assert(factoryClass);
+
+ zval* factory;
+ char* id;
+ int idLen;
+ if(zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, const_cast<char*>("Os!"), &factory, factoryClass, &id,
+ &idLen TSRMLS_CC) != SUCCESS)
+ {
+ RETURN_NULL();
+ }
+
+ string type;
+ if(id)
+ {
+ type = string(id, idLen);
+ }
+
+ if(!_this->addValueFactory(type, factory TSRMLS_CC))
+ {
+ RETURN_NULL();
+ }
+}
+
ZEND_METHOD(Ice_Communicator, findObjectFactory)
{
CommunicatorInfoIPtr _this = Wrapper<CommunicatorInfoIPtr>::value(getThis() TSRMLS_CC);
@@ -465,6 +505,30 @@ ZEND_METHOD(Ice_Communicator, findObjectFactory)
}
}
+ZEND_METHOD(Ice_Communicator, findValueFactory)
+{
+ CommunicatorInfoIPtr _this = Wrapper<CommunicatorInfoIPtr>::value(getThis() TSRMLS_CC);
+ assert(_this);
+
+ char* id;
+ int idLen;
+ if(zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, const_cast<char*>("s!"), &id, &idLen TSRMLS_CC) != SUCCESS)
+ {
+ RETURN_NULL();
+ }
+
+ string type;
+ if(id)
+ {
+ type = string(id, idLen);
+ }
+
+ if(!_this->findValueFactory(type, return_value TSRMLS_CC))
+ {
+ RETURN_NULL();
+ }
+}
+
ZEND_METHOD(Ice_Communicator, getImplicitContext)
{
runtimeError("not implemented" TSRMLS_CC);
@@ -501,7 +565,7 @@ ZEND_METHOD(Ice_Communicator, getLogger)
{
WRONG_PARAM_COUNT;
}
-
+
CommunicatorInfoIPtr _this = Wrapper<CommunicatorInfoIPtr>::value(getThis() TSRMLS_CC);
assert(_this);
@@ -1137,6 +1201,8 @@ static zend_function_entry _classMethods[] =
ZEND_ME(Ice_Communicator, identityToString, NULL, ZEND_ACC_PUBLIC)
ZEND_ME(Ice_Communicator, addObjectFactory, NULL, ZEND_ACC_PUBLIC)
ZEND_ME(Ice_Communicator, findObjectFactory, NULL, ZEND_ACC_PUBLIC)
+ ZEND_ME(Ice_Communicator, addValueFactory, NULL, ZEND_ACC_PUBLIC)
+ ZEND_ME(Ice_Communicator, findValueFactory, NULL, ZEND_ACC_PUBLIC)
ZEND_ME(Ice_Communicator, getImplicitContext, NULL, ZEND_ACC_PUBLIC)
ZEND_ME(Ice_Communicator, getProperties, NULL, ZEND_ACC_PUBLIC)
ZEND_ME(Ice_Communicator, getLogger, NULL, ZEND_ACC_PUBLIC)
@@ -1449,9 +1515,10 @@ IcePHP::communicatorRequestShutdown(TSRMLS_D)
CommunicatorInfoIPtr info = p->second;
//
- // We need to destroy any object factories installed during this request.
+ // We need to destroy any object|value factories installed during this request.
//
info->destroyObjectFactories(TSRMLS_C);
+ info->destroyValueFactories(TSRMLS_C);
}
//
@@ -1525,7 +1592,7 @@ IcePHP::CommunicatorInfoI::addObjectFactory(const string& id, zval* factory TSRM
if(p != objectFactories.end())
{
Ice::AlreadyRegisteredException ex(__FILE__, __LINE__);
- ex.kindOfObject = "object factory";
+ ex.kindOfObject = "value factory";
ex.id = id;
throwException(ex TSRMLS_CC);
return false;
@@ -1533,6 +1600,27 @@ IcePHP::CommunicatorInfoI::addObjectFactory(const string& id, zval* factory TSRM
objectFactories.insert(ObjectFactoryMap::value_type(id, factory));
Z_ADDREF_P(factory);
+ valueFactories.insert(ValueFactoryMap::value_type(id, factory));
+ Z_ADDREF_P(factory);
+
+ return true;
+}
+
+bool
+IcePHP::CommunicatorInfoI::addValueFactory(const string& id, zval* factory TSRMLS_DC)
+{
+ ObjectFactoryMap::iterator p = valueFactories.find(id);
+ if(p != valueFactories.end())
+ {
+ Ice::AlreadyRegisteredException ex(__FILE__, __LINE__);
+ ex.kindOfObject = "value factory";
+ ex.id = id;
+ throwException(ex TSRMLS_CC);
+ return false;
+ }
+
+ valueFactories.insert(ValueFactoryMap::value_type(id, factory));
+ Z_ADDREF_P(factory);
return true;
}
@@ -1552,6 +1640,21 @@ IcePHP::CommunicatorInfoI::findObjectFactory(const string& id, zval* zv TSRMLS_D
return false;
}
+bool
+IcePHP::CommunicatorInfoI::findValueFactory(const string& id, zval* zv TSRMLS_DC)
+{
+ ValueFactoryMap::iterator p = valueFactories.find(id);
+ if(p != valueFactories.end())
+ {
+ *zv = *p->second; // This is legal - it simply copies the object's handle.
+ INIT_PZVAL(zv);
+ zval_copy_ctor(zv);
+ return true;
+ }
+
+ return false;
+}
+
void
IcePHP::CommunicatorInfoI::destroyObjectFactories(TSRMLS_D)
{
@@ -1564,6 +1667,17 @@ IcePHP::CommunicatorInfoI::destroyObjectFactories(TSRMLS_D)
zend_clear_exception(TSRMLS_C);
zval_ptr_dtor(&p->second);
}
+ valueFactories.clear();
+}
+
+void
+IcePHP::CommunicatorInfoI::destroyValueFactories(TSRMLS_D)
+{
+ for(ObjectFactoryMap::iterator p = objectFactories.begin(); p != objectFactories.end(); ++p)
+ {
+ zval_ptr_dtor(&p->second);
+ }
+ objectFactories.clear();
}
IcePHP::ObjectFactoryI::ObjectFactoryI(const Ice::CommunicatorPtr& communicator) :
@@ -1591,12 +1705,12 @@ IcePHP::ObjectFactoryI::create(const string& id)
//
// Check if the application has registered a factory for this id.
//
- ObjectFactoryMap::iterator q = info->objectFactories.find(id);
- if(q == info->objectFactories.end())
+ ValueFactoryMap::iterator q = info->valueFactories.find(id);
+ if(q == info->valueFactories.end())
{
- q = info->objectFactories.find(""); // Look for a default factory.
+ q = info->valueFactories.find(""); // Look for a default factory.
}
- if(q != info->objectFactories.end())
+ if(q != info->valueFactories.end())
{
factory = q->second;
}
diff --git a/php/src/IcePHP/Util.cpp b/php/src/IcePHP/Util.cpp
index 05aaaa3f6cb..5dbe07c5abc 100644
--- a/php/src/IcePHP/Util.cpp
+++ b/php/src/IcePHP/Util.cpp
@@ -323,7 +323,7 @@ IcePHP::createStringMap(zval* zv, const map<string, string>& ctx TSRMLS_DC)
for(map<string, string>::const_iterator p = ctx.begin(); p != ctx.end(); ++p)
{
if(add_assoc_stringl_ex(zv, const_cast<char*>(p->first.c_str()), p->first.length() + 1,
- const_cast<char*>(p->second.c_str()),
+ const_cast<char*>(p->second.c_str()),
static_cast<uint>(p->second.length()), 1) == FAILURE)
{
return false;
@@ -595,7 +595,7 @@ convertLocalException(const Ice::LocalException& ex, zval* zex TSRMLS_DC)
zend_update_property(cls, zex, const_cast<char*>("supported"), sizeof("supported") - 1, v TSRMLS_CC);
zval_ptr_dtor(&v);
}
- catch(const Ice::NoObjectFactoryException& e)
+ catch(const Ice::NoValueFactoryException& e)
{
setStringMember(zex, "reason", e.reason TSRMLS_CC);
setStringMember(zex, "type", e.type TSRMLS_CC);
diff --git a/php/test/Ice/objects/Client.php b/php/test/Ice/objects/Client.php
index b57d585093b..d50b0d13c95 100644
--- a/php/test/Ice/objects/Client.php
+++ b/php/test/Ice/objects/Client.php
@@ -33,6 +33,7 @@ if($NS)
class Test_H extends Test\H {}
class Ice_ObjectImpl extends Ice\ObjectImpl {}
interface Ice_ObjectFactory extends Ice\ObjectFactory {}
+ interface Ice_ValueFactory extends Ice\ValueFactory {}
EOT;
eval($code);
}
@@ -122,7 +123,7 @@ class HI extends Test_H
{
}
-class MyObjectFactory implements Ice_ObjectFactory
+class MyValueFactory implements Ice_ValueFactory
{
function create($id)
{
@@ -160,9 +161,18 @@ class MyObjectFactory implements Ice_ObjectFactory
}
return null;
}
+}
+
+class MyObjectFactory implements Ice_ObjectFactory
+{
+ function create($id)
+ {
+ return null;
+ }
function destroy()
{
+ // Do nothing
}
}
@@ -346,7 +356,7 @@ function allTests($communicator)
$h = $initial->getH();
test($h != null and $h instanceof Test_H);
echo "ok\n";
-
+
echo "getting D1... ";
flush();
$d1 = $initial->getD1(new Test_D1(new Test_A1("a1"), new Test_A1("a2"), new Test_A1("a3"), new Test_A1("a4")));
@@ -355,7 +365,7 @@ function allTests($communicator)
test($d1->a3->name == "a3");
test($d1->a4->name == "a4");
echo "ok\n";
-
+
echo "throw EDerived... ";
flush();
try
@@ -440,19 +450,30 @@ function allTests($communicator)
}
echo "ok\n";
+ echo "testing getting ObjectFactory... ";
+ flush();
+ test($communicator->findObjectFactory("TestOF") != null);
+ echo "ok\n";
+
+ echo "testing getting ObjectFactory as ValueFactory... ";
+ flush();
+ test($communicator->findValueFactory("TestOF") != null);
+ echo "ok\n";
+
return $initial;
}
$communicator = Ice_initialize($argv);
-$factory = new MyObjectFactory();
-$communicator->addObjectFactory($factory, "::Test::B");
-$communicator->addObjectFactory($factory, "::Test::C");
-$communicator->addObjectFactory($factory, "::Test::D");
-$communicator->addObjectFactory($factory, "::Test::E");
-$communicator->addObjectFactory($factory, "::Test::F");
-$communicator->addObjectFactory($factory, "::Test::I");
-$communicator->addObjectFactory($factory, "::Test::J");
-$communicator->addObjectFactory($factory, "::Test::H");
+$factory = new MyValueFactory();
+$communicator->addValueFactory($factory, "::Test::B");
+$communicator->addValueFactory($factory, "::Test::C");
+$communicator->addValueFactory($factory, "::Test::D");
+$communicator->addValueFactory($factory, "::Test::E");
+$communicator->addValueFactory($factory, "::Test::F");
+$communicator->addValueFactory($factory, "::Test::I");
+$communicator->addValueFactory($factory, "::Test::J");
+$communicator->addValueFactory($factory, "::Test::H");
+$communicator->addObjectFactory(new MyObjectFactory(), "TestOF");
$initial = allTests($communicator);
$initial->shutdown();
$communicator->destroy();
diff --git a/php/test/Ice/slicing/objects/Client.php b/php/test/Ice/slicing/objects/Client.php
index 1e2a8913e79..94f38ef6c67 100644
--- a/php/test/Ice/slicing/objects/Client.php
+++ b/php/test/Ice/slicing/objects/Client.php
@@ -102,7 +102,7 @@ function allTests($communicator)
}
catch(Exception $ex)
{
- test(get_class($ex) == ($NS ? "Ice\\NoObjectFactoryException" : "Ice_NoObjectFactoryException"));
+ test(get_class($ex) == ($NS ? "Ice\\NoValueFactoryException" : "Ice_NoValueFactoryException"));
}
}
echo "ok\n";
@@ -122,7 +122,7 @@ function allTests($communicator)
}
catch(Exception $b)
{
- $excls = $NS ? "Ice\\NoObjectFactoryException" : "Ice_NoObjectFactoryException";
+ $excls = $NS ? "Ice\\NoValueFactoryException" : "Ice_NoValueFactoryException";
if($b instanceof $excls)
{
test($test->ice_getEncodingVersion() == $Ice_Encoding_1_0);
diff --git a/python/modules/IcePy/Communicator.cpp b/python/modules/IcePy/Communicator.cpp
index 919086d9ae8..df7d2282927 100644
--- a/python/modules/IcePy/Communicator.cpp
+++ b/python/modules/IcePy/Communicator.cpp
@@ -24,6 +24,7 @@
#include <Thread.h>
#include <Types.h>
#include <Util.h>
+#include <Ice/ValueFactory.h>
#include <Ice/Initialize.h>
#include <Ice/CommunicatorAsync.h>
#include <Ice/LocalException.h>
@@ -1197,7 +1198,51 @@ communicatorAddObjectFactory(CommunicatorObject* self, PyObject* args)
}
- if(!pof->add(factory, id))
+ if(!pof->addObjectFactory(factory, id))
+ {
+ return 0;
+ }
+
+ Py_INCREF(Py_None);
+ return Py_None;
+}
+
+#ifdef WIN32
+extern "C"
+#endif
+static PyObject*
+communicatorAddValueFactory(CommunicatorObject* self, PyObject* args)
+{
+ PyObject* factoryType = lookupType("Ice.ValueFactory");
+ assert(factoryType);
+
+ PyObject* factory;
+ PyObject* strObj;
+ if(!PyArg_ParseTuple(args, STRCAST("O!O"), factoryType, &factory, &strObj))
+ {
+ return 0;
+ }
+
+ string id;
+ if(!getStringArg(strObj, "id", id))
+ {
+ return 0;
+ }
+
+ ObjectFactoryPtr pof;
+ try
+ {
+ pof = ObjectFactoryPtr::dynamicCast((*self->communicator)->findObjectFactory(""));
+ assert(pof);
+ }
+ catch(const Ice::Exception& ex)
+ {
+ setPythonException(ex);
+ return 0;
+
+ }
+
+ if(!pof->addValueFactory(factory, id))
{
return 0;
}
@@ -1236,7 +1281,40 @@ communicatorFindObjectFactory(CommunicatorObject* self, PyObject* args)
return 0;
}
- return pof->find(id);
+ return pof->findObjectFactory(id);
+}
+
+#ifdef WIN32
+extern "C"
+#endif
+static PyObject*
+communicatorFindValueFactory(CommunicatorObject* self, PyObject* args)
+{
+ PyObject* strObj;
+ if(!PyArg_ParseTuple(args, STRCAST("O"), &strObj))
+ {
+ return 0;
+ }
+
+ string id;
+ if(!getStringArg(strObj, "id", id))
+ {
+ return 0;
+ }
+
+ ObjectFactoryPtr pof;
+ try
+ {
+ pof = ObjectFactoryPtr::dynamicCast((*self->communicator)->findObjectFactory(""));
+ assert(pof);
+ }
+ catch(const Ice::Exception& ex)
+ {
+ setPythonException(ex);
+ return 0;
+ }
+
+ return pof->findValueFactory(id);
}
#ifdef WIN32
@@ -1570,6 +1648,10 @@ static PyMethodDef CommunicatorMethods[] =
PyDoc_STR(STRCAST("addObjectFactory(factory, id) -> None")) },
{ STRCAST("findObjectFactory"), reinterpret_cast<PyCFunction>(communicatorFindObjectFactory), METH_VARARGS,
PyDoc_STR(STRCAST("findObjectFactory(id) -> Ice.ObjectFactory")) },
+ { STRCAST("addValueFactory"), reinterpret_cast<PyCFunction>(communicatorAddValueFactory), METH_VARARGS,
+ PyDoc_STR(STRCAST("addValueFactory(factory, id) -> None")) },
+ { STRCAST("findValueFactory"), reinterpret_cast<PyCFunction>(communicatorFindValueFactory), METH_VARARGS,
+ PyDoc_STR(STRCAST("findValueFactory(id) -> Ice.ValueFactory")) },
{ STRCAST("getImplicitContext"), reinterpret_cast<PyCFunction>(communicatorGetImplicitContext), METH_NOARGS,
PyDoc_STR(STRCAST("getImplicitContext() -> Ice.ImplicitContext")) },
{ STRCAST("getProperties"), reinterpret_cast<PyCFunction>(communicatorGetProperties), METH_NOARGS,
diff --git a/python/modules/IcePy/Makefile.mak b/python/modules/IcePy/Makefile.mak
index 6ef88199500..4473a818f67 100644
--- a/python/modules/IcePy/Makefile.mak
+++ b/python/modules/IcePy/Makefile.mak
@@ -35,6 +35,7 @@ OBJS = .\BatchRequestInterceptor.obj \
.\Types.obj \
.\Util.obj
+
#
# Get Make.common.rules.mak to figure out CPP_COMPILER by setting it
# to "auto"
diff --git a/python/modules/IcePy/ObjectFactory.cpp b/python/modules/IcePy/ObjectFactory.cpp
index 1829d32956b..d3720714a29 100644
--- a/python/modules/IcePy/ObjectFactory.cpp
+++ b/python/modules/IcePy/ObjectFactory.cpp
@@ -25,7 +25,8 @@ IcePy::ObjectFactory::ObjectFactory()
IcePy::ObjectFactory::~ObjectFactory()
{
- assert(_factoryMap.empty());
+ assert(_valueFactoryMap.empty());
+ assert(_objectFactoryMap.empty());
}
Ice::ObjectPtr
@@ -39,8 +40,8 @@ IcePy::ObjectFactory::create(const string& id)
{
Lock sync(*this);
- FactoryMap::iterator p = _factoryMap.find(id);
- if(p != _factoryMap.end())
+ FactoryMap::iterator p = _valueFactoryMap.find(id);
+ if(p != _valueFactoryMap.end())
{
factory = p->second;
}
@@ -112,12 +113,15 @@ IcePy::ObjectFactory::create(const string& id)
void
IcePy::ObjectFactory::destroy()
{
- FactoryMap factories;
+ FactoryMap valueFactories;
+ FactoryMap objectFactories;
{
Lock sync(*this);
- factories = _factoryMap;
- _factoryMap.clear();
+ objectFactories = _objectFactoryMap;
+ valueFactories = _valueFactoryMap;
+ _valueFactoryMap.clear();
+ _objectFactoryMap.clear();
}
//
@@ -126,66 +130,89 @@ IcePy::ObjectFactory::destroy()
//
AdoptThread adoptThread;
- for(FactoryMap::iterator p = factories.begin(); p != factories.end(); ++p)
+ for(FactoryMap::iterator p = _objectFactoryMap.begin(); p != _objectFactoryMap.end(); ++p)
{
//
- // Invoke the destroy method on each registered Python factory.
+ // Invoke the destroy method on each registered Python "object" factory.
//
PyObjectHandle obj = PyObject_CallMethod(p->second, STRCAST("destroy"), 0);
PyErr_Clear(); // Ignore errors.
Py_DECREF(p->second);
}
+ for(FactoryMap::iterator p = _valueFactoryMap.begin(); p != _valueFactoryMap.end(); ++p)
+ {
+ PyErr_Clear(); // Ignore errors.
+ Py_DECREF(p->second);
+ }
}
bool
-IcePy::ObjectFactory::add(PyObject* factory, const string& id)
+IcePy::ObjectFactory::addValueFactory(PyObject* factory, const string& id)
{
Lock sync(*this);
- FactoryMap::iterator p = _factoryMap.find(id);
- if(p != _factoryMap.end())
+ FactoryMap::iterator p = _valueFactoryMap.find(id);
+ if(p != _valueFactoryMap.end())
{
Ice::AlreadyRegisteredException ex(__FILE__, __LINE__);
- ex.kindOfObject = "object factory";
+ ex.kindOfObject = "value factory";
ex.id = id;
setPythonException(ex);
return false;
}
- _factoryMap.insert(FactoryMap::value_type(id, factory));
+ _valueFactoryMap.insert(FactoryMap::value_type(id, factory));
Py_INCREF(factory);
return true;
}
bool
-IcePy::ObjectFactory::remove(const string& id)
+IcePy::ObjectFactory::addObjectFactory(PyObject* factory, const string& id)
{
Lock sync(*this);
- FactoryMap::iterator p = _factoryMap.find(id);
- if(p == _factoryMap.end())
+ FactoryMap::iterator p = _valueFactoryMap.find(id);
+ if(p != _valueFactoryMap.end())
{
- Ice::NotRegisteredException ex(__FILE__, __LINE__);
- ex.kindOfObject = "object factory";
+ Ice::AlreadyRegisteredException ex(__FILE__, __LINE__);
+ ex.kindOfObject = "value factory";
ex.id = id;
setPythonException(ex);
return false;
}
- Py_DECREF(p->second);
- _factoryMap.erase(p);
+ _valueFactoryMap.insert(FactoryMap::value_type(id, factory));
+ Py_INCREF(factory);
+ _objectFactoryMap.insert(FactoryMap::value_type(id, factory));
+ Py_INCREF(factory);
return true;
}
PyObject*
-IcePy::ObjectFactory::find(const string& id)
+IcePy::ObjectFactory::findValueFactory(const string& id)
+{
+ Lock sync(*this);
+
+ FactoryMap::iterator p = _valueFactoryMap.find(id);
+ if(p == _valueFactoryMap.end())
+ {
+ Py_INCREF(Py_None);
+ return Py_None;
+ }
+
+ Py_INCREF(p->second);
+ return p->second;
+}
+
+PyObject*
+IcePy::ObjectFactory::findObjectFactory(const string& id)
{
Lock sync(*this);
- FactoryMap::iterator p = _factoryMap.find(id);
- if(p == _factoryMap.end())
+ FactoryMap::iterator p = _objectFactoryMap.find(id);
+ if(p == _objectFactoryMap.end())
{
Py_INCREF(Py_None);
return Py_None;
diff --git a/python/modules/IcePy/ObjectFactory.h b/python/modules/IcePy/ObjectFactory.h
index 8445996b330..57b93352bdd 100644
--- a/python/modules/IcePy/ObjectFactory.h
+++ b/python/modules/IcePy/ObjectFactory.h
@@ -34,14 +34,17 @@ public:
virtual void destroy();
- bool add(PyObject*, const std::string&);
- bool remove(const std::string&);
- PyObject* find(const std::string&);
+ bool addValueFactory(PyObject*, const std::string&);
+ bool addObjectFactory(PyObject*, const std::string&);
+
+ PyObject* findValueFactory(const std::string&);
+ PyObject* findObjectFactory(const std::string&);
private:
typedef std::map<std::string, PyObject*> FactoryMap;
- FactoryMap _factoryMap;
+ FactoryMap _valueFactoryMap;
+ FactoryMap _objectFactoryMap;
};
typedef IceUtil::Handle<ObjectFactory> ObjectFactoryPtr;
diff --git a/python/modules/IcePy/Util.cpp b/python/modules/IcePy/Util.cpp
index 74869df7121..b86ddffd953 100644
--- a/python/modules/IcePy/Util.cpp
+++ b/python/modules/IcePy/Util.cpp
@@ -818,7 +818,7 @@ convertLocalException(const Ice::LocalException& ex, PyObject* p)
m = IcePy::createEncodingVersion(e.supported);
PyObject_SetAttrString(p, STRCAST("supported"), m.get());
}
- catch(const Ice::NoObjectFactoryException& e)
+ catch(const Ice::NoValueFactoryException& e)
{
IcePy::PyObjectHandle m;
m = IcePy::createString(e.reason);
diff --git a/python/python/Ice.py b/python/python/Ice.py
index feb060efa54..c111781f923 100644
--- a/python/python/Ice.py
+++ b/python/python/Ice.py
@@ -446,6 +446,7 @@ import Ice_Locator_ice
import Ice_Logger_ice
import Ice_ObjectAdapter_ice
import Ice_ObjectFactory_ice
+import Ice_ValueFactory_ice
import Ice_Process_ice
import Ice_Properties_ice
import Ice_RemoteLogger_ice
@@ -623,6 +624,12 @@ class CommunicatorI(Communicator):
def findObjectFactory(self, id):
return self._impl.findObjectFactory(id)
+ def addValueFactory(self, factory, id):
+ self._impl.addValueFactory(factory, id)
+
+ def findValueFactory(self, id):
+ return self._impl.findValueFactory(id)
+
def getImplicitContext(self):
context = self._impl.getImplicitContext()
if context == None:
diff --git a/python/python/Makefile b/python/python/Makefile
index 81fdcd867d0..9fafeab7ada 100644
--- a/python/python/Makefile
+++ b/python/python/Makefile
@@ -54,6 +54,7 @@ ICE_SRCS = Ice_BuiltinSequences_ice.py \
Ice_ServantLocator_ice.py \
Ice_ServantLocatorF_ice.py \
Ice_SliceChecksumDict_ice.py \
+ Ice_ValueFactory_ice.py \
Ice_Version_ice.py
GLACIER2_SRCS = Glacier2_Metrics_ice.py \
diff --git a/python/python/Makefile.mak b/python/python/Makefile.mak
index fb5b2358780..26d8dec616b 100644
--- a/python/python/Makefile.mak
+++ b/python/python/Makefile.mak
@@ -50,6 +50,7 @@ ICE_SLICES = Ice\BuiltinSequences.ice \
Ice\ServantLocator.ice \
Ice\ServantLocatorF.ice \
Ice\SliceChecksumDict.ice \
+ Ice\ValueFactory.ice \
Ice\Version.ice \
ICE_SRCS = $(ICE_SLICES:.ice=_ice.py)
@@ -266,6 +267,12 @@ Ice_EndpointF_ice.py: "$(slicedir)/Ice/EndpointF.ice" "$(SLICEPARSERLIB)"
Ice_EndpointTypes_ice.py: "$(slicedir)/Ice/EndpointTypes.ice" "$(SLICEPARSERLIB)"
"$(SLICE2PY)" $(SLICE2PYFLAGS) --prefix Ice_ --no-package "$(slicedir)/Ice/EndpointTypes.ice"
+Ice_ValueFactory_ice.py: "$(slicedir)/Ice/ValueFactory.ice" "$(SLICEPARSERLIB)"
+ "$(SLICE2PY)" $(SLICE2PYFLAGS) --prefix Ice_ --no-package "$(slicedir)/Ice/ValueFactory.ice"
+
+Ice_ValueFactoryF_ice.py: "$(slicedir)/Ice/ValueFactoryF.ice" "$(SLICEPARSERLIB)"
+ "$(SLICE2PY)" $(SLICE2PYFLAGS) --prefix Ice_ --no-package "$(slicedir)/Ice/ValueFactoryF.ice"
+
Ice_Version_ice.py: "$(slicedir)/Ice/Version.ice" "$(SLICEPARSERLIB)"
"$(SLICE2PY)" $(SLICE2PYFLAGS) --prefix Ice_ --no-package "$(slicedir)/Ice/Version.ice"
diff --git a/python/test/Ice/exceptions/AllTests.py b/python/test/Ice/exceptions/AllTests.py
index 4522a0de731..4df5e5d4dd3 100644
--- a/python/test/Ice/exceptions/AllTests.py
+++ b/python/test/Ice/exceptions/AllTests.py
@@ -26,13 +26,10 @@ class ServantLocatorI(Ice.ServantLocator):
def deactivate(self, category):
pass
-class ObjectFactoryI(Ice.ObjectFactory):
+class ValueFactoryI(Ice.ValueFactory):
def create(id):
return None
- def destroy():
- pass
-
class CallbackBase:
def __init__(self):
self._called = False
@@ -273,10 +270,10 @@ def allTests(communicator):
sys.stdout.write("testing object factory registration exception... ")
sys.stdout.flush()
- of = ObjectFactoryI()
- communicator.addObjectFactory(of, "x")
+ vf = ValueFactoryI()
+ communicator.addValueFactory(vf, "x")
try:
- communicator.addObjectFactory(of, "x")
+ communicator.addValueFactory(vf, "x")
test(false)
except Ice.AlreadyRegisteredException:
pass
diff --git a/python/test/Ice/objects/AllTests.py b/python/test/Ice/objects/AllTests.py
index 3d46a6ca643..69296510fd4 100644
--- a/python/test/Ice/objects/AllTests.py
+++ b/python/test/Ice/objects/AllTests.py
@@ -9,7 +9,7 @@
import Ice, Test, TestI, sys
-class MyObjectFactory(Ice.ObjectFactory):
+class MyValueFactory(Ice.ValueFactory):
def create(self, type):
if type == '::Test::B':
return TestI.BI()
@@ -29,8 +29,11 @@ class MyObjectFactory(Ice.ObjectFactory):
return TestI.HI()
assert(False) # Should never be reached
- def destroy(self):
- # Nothing to do
+class MyObjectFactory(Ice.ObjectFactory):
+ def create(self, type):
+ return None
+
+ def destroy():
pass
def test(b):
@@ -38,15 +41,17 @@ def test(b):
raise RuntimeError('test assertion failed')
def allTests(communicator):
- factory = MyObjectFactory()
- communicator.addObjectFactory(factory, '::Test::B')
- communicator.addObjectFactory(factory, '::Test::C')
- communicator.addObjectFactory(factory, '::Test::D')
- communicator.addObjectFactory(factory, '::Test::E')
- communicator.addObjectFactory(factory, '::Test::F')
- communicator.addObjectFactory(factory, '::Test::I')
- communicator.addObjectFactory(factory, '::Test::J')
- communicator.addObjectFactory(factory, '::Test::H')
+ factory = MyValueFactory()
+ communicator.addValueFactory(factory, '::Test::B')
+ communicator.addValueFactory(factory, '::Test::C')
+ communicator.addValueFactory(factory, '::Test::D')
+ communicator.addValueFactory(factory, '::Test::E')
+ communicator.addValueFactory(factory, '::Test::F')
+ communicator.addValueFactory(factory, '::Test::I')
+ communicator.addValueFactory(factory, '::Test::J')
+ communicator.addValueFactory(factory, '::Test::H')
+
+ communicator.addObjectFactory(MyObjectFactory(), "TestOF")
sys.stdout.write("testing stringToProxy... ")
sys.stdout.flush()
@@ -67,19 +72,19 @@ def allTests(communicator):
b1 = initial.getB1()
test(b1)
print("ok")
-
+
sys.stdout.write("getting B2... ")
sys.stdout.flush()
b2 = initial.getB2()
test(b2)
print("ok")
-
+
sys.stdout.write("getting C... ")
sys.stdout.flush()
c = initial.getC()
test(c)
print("ok")
-
+
sys.stdout.write("getting D... ")
sys.stdout.flush()
d = initial.getD()
@@ -97,7 +102,7 @@ def allTests(communicator):
test(f.e2.checkValues())
test(f._e1.checkValues())
print("ok")
-
+
sys.stdout.write("getting I, J, H... ")
sys.stdout.flush()
i = initial.getI()
@@ -107,7 +112,7 @@ def allTests(communicator):
h = initial.getH()
test(isinstance(h, Test.H))
print("ok")
-
+
sys.stdout.write("getting D1... ")
sys.stdout.flush()
d1 = initial.getD1(Test.D1(Test.A1("a1"), Test.A1("a2"), Test.A1("a3"), Test.A1("a4")));
@@ -116,7 +121,7 @@ def allTests(communicator):
test(d1.a3.name == "a3")
test(d1.a4.name == "a4")
print("ok")
-
+
sys.stdout.write("throw EDerived... ")
sys.stdout.flush()
try:
@@ -135,7 +140,7 @@ def allTests(communicator):
initial.setI(TestI.JI())
initial.setI(TestI.HI())
print("ok")
-
+
sys.stdout.write("checking consistency... ")
sys.stdout.flush()
test(b1 != b2)
@@ -170,7 +175,7 @@ def allTests(communicator):
test(c)
test(d)
print("ok")
-
+
sys.stdout.write("checking consistency... ")
sys.stdout.flush()
test(b1 != b2)
@@ -220,7 +225,7 @@ def allTests(communicator):
print("ok")
# Don't run this test with collocation, this should work with collocation
- # but the test isn't written to support it (we'd need support for the
+ # but the test isn't written to support it (we'd need support for the
# streaming interface)
if initial.ice_getConnection():
sys.stdout.write("testing UnexpectedObjectException... ")
@@ -244,4 +249,14 @@ def allTests(communicator):
test(False)
print("ok")
+ sys.stdout.write("testing getting ObjectFactory... ")
+ sys.stdout.flush()
+ test(communicator.findObjectFactory("TestOF") != None)
+ print("ok")
+
+ sys.stdout.write("testing getting ObjectFactory as ValueFactory... ")
+ sys.stdout.flush()
+ test(communicator.findValueFactory("TestOF") != None)
+ print("ok")
+
return initial
diff --git a/python/test/Ice/objects/Server.py b/python/test/Ice/objects/Server.py
index d988b501d14..eb4df06fc5a 100755
--- a/python/test/Ice/objects/Server.py
+++ b/python/test/Ice/objects/Server.py
@@ -15,7 +15,7 @@ Ice.loadSlice('Test.ice')
Ice.loadSlice('ServerPrivate.ice')
import Test, TestI
-class MyObjectFactory(Ice.ObjectFactory):
+class MyValueFactory(Ice.ValueFactory):
def create(self, type):
if type == '::Test::I':
return TestI.II()
@@ -25,15 +25,11 @@ class MyObjectFactory(Ice.ObjectFactory):
return TestI.HI()
assert(False) # Should never be reached
- def destroy(self):
- # Nothing to do
- pass
-
def run(args, communicator):
- factory = MyObjectFactory()
- communicator.addObjectFactory(factory, '::Test::I')
- communicator.addObjectFactory(factory, '::Test::J')
- communicator.addObjectFactory(factory, '::Test::H')
+ factory = MyValueFactory()
+ communicator.addValueFactory(factory, '::Test::I')
+ communicator.addValueFactory(factory, '::Test::J')
+ communicator.addValueFactory(factory, '::Test::H')
communicator.getProperties().setProperty("TestAdapter.Endpoints", "default -p 12010")
adapter = communicator.createObjectAdapter("TestAdapter")
diff --git a/python/test/Ice/slicing/objects/AllTests.py b/python/test/Ice/slicing/objects/AllTests.py
index c73a8df0b01..15f90497304 100644
--- a/python/test/Ice/slicing/objects/AllTests.py
+++ b/python/test/Ice/slicing/objects/AllTests.py
@@ -68,14 +68,14 @@ class Callback(CallbackBase):
test(False)
def exception_SBSUnknownDerivedAsSBaseCompact(self, ex):
- test(isinstance(ex, Ice.NoObjectFactoryException))
+ test(isinstance(ex, Ice.NoValueFactoryException))
self.called()
def response_SUnknownAsObject10(self, o):
test(False)
def exception_SUnknownAsObject10(self, exc):
- test(exc.ice_name() == "Ice::NoObjectFactoryException")
+ test(exc.ice_name() == "Ice::NoValueFactoryException")
self.called()
def response_SUnknownAsObject11(self, o):
@@ -359,15 +359,12 @@ class PNodeI(Test.PNode):
def __del__(self):
PNodeI.counter = PNodeI.counter - 1
-class NodeFactoryI(Ice.ObjectFactory):
+class NodeFactoryI(Ice.ValueFactory):
def create(self, id):
if id == Test.PNode.ice_staticId():
return PNodeI()
return None
- def destroy(self):
- pass
-
class PreservedI(Test.Preserved):
counter = 0
@@ -377,15 +374,12 @@ class PreservedI(Test.Preserved):
def __del__(self):
PreservedI.counter = PreservedI.counter - 1
-class PreservedFactoryI(Ice.ObjectFactory):
+class PreservedFactoryI(Ice.ValueFactory):
def create(self, id):
if id == Test.Preserved.ice_staticId():
return PreservedI()
return None
- def destroy(self):
- pass
-
def allTests(communicator):
obj = communicator.stringToProxy("Test:default -p 12010")
t = Test.TestIntfPrx.checkedCast(obj)
@@ -492,7 +486,7 @@ def allTests(communicator):
test(False)
except Ice.OperationNotExistException:
pass
- except Ice.NoObjectFactoryException:
+ except Ice.NoValueFactoryException:
# Expected.
pass
except:
@@ -530,7 +524,7 @@ def allTests(communicator):
test(isinstance(o, Ice.UnknownSlicedObject))
test(o.unknownTypeId == "::Test::SUnknown")
t.checkSUnknown(o)
- except Ice.NoObjectFactoryException:
+ except Ice.NoValueFactoryException:
test(t.ice_getEncodingVersion() == Ice.Encoding_1_0)
except Ice.Exception:
test(False)
@@ -1579,7 +1573,7 @@ def allTests(communicator):
t.ice_encodingVersion(Ice.Encoding_1_0).checkPBSUnknown(p)
except Ice.OperationNotExistException:
pass
-
+
print("ok")
sys.stdout.write("preserved classes (AMI)... ")
@@ -1674,7 +1668,7 @@ def allTests(communicator):
# UCNode. This provides an easy way to determine how many
# unmarshaled instances currently exist.
#
- communicator.addObjectFactory(NodeFactoryI(), Test.PNode.ice_staticId())
+ communicator.addValueFactory(NodeFactoryI(), Test.PNode.ice_staticId())
#
# Relay a graph through the server. This test uses a preserved class
@@ -1761,7 +1755,7 @@ def allTests(communicator):
# Preserved. This provides an easy way to determine how many
# unmarshaled instances currently exist.
#
- communicator.addObjectFactory(PreservedFactoryI(), Test.Preserved.ice_staticId())
+ communicator.addValueFactory(PreservedFactoryI(), Test.Preserved.ice_staticId())
#
# Obtain a preserved object from the server where the most-derived
diff --git a/ruby/ruby/Ice.rb b/ruby/ruby/Ice.rb
index cd80d580b56..e336dc5d824 100644
--- a/ruby/ruby/Ice.rb
+++ b/ruby/ruby/Ice.rb
@@ -214,6 +214,7 @@ require 'Ice/LocalException.rb'
require 'Ice/Locator.rb'
require 'Ice/Logger.rb'
require 'Ice/ObjectFactory.rb'
+require 'Ice/ValueFactory.rb'
require 'Ice/Process.rb'
require 'Ice/Router.rb'
require 'Ice/Connection.rb'
@@ -339,7 +340,7 @@ module Ice
def initialize(signalPolicy=HandleSignals)
@@_signalPolicy = signalPolicy
end
-
+
def main(args, configFile=nil, initData=nil)
if @@_communicator
Ice::getProcessLogger().error($0 + ": only one instance of the Application class can be used")
diff --git a/ruby/ruby/Makefile b/ruby/ruby/Makefile
index 4e6d128ffaf..3fe9e57c8d5 100644
--- a/ruby/ruby/Makefile
+++ b/ruby/ruby/Makefile
@@ -53,7 +53,8 @@ ICE_SRCS = Ice/LocalException.rb \
Ice/Version.rb \
Ice/InstrumentationF.rb \
Ice/Instrumentation.rb \
- Ice/Metrics.rb
+ Ice/Metrics.rb \
+ Ice/ValueFactory.rb
#
# IMPORTANT: If you add or remove Slice files, you also need to check Glacier2.rb!
diff --git a/ruby/src/IceRuby/Communicator.cpp b/ruby/src/IceRuby/Communicator.cpp
index 24d9629a847..2ba7bc53c83 100644
--- a/ruby/src/IceRuby/Communicator.cpp
+++ b/ruby/src/IceRuby/Communicator.cpp
@@ -181,7 +181,7 @@ IceRuby_initialize(int argc, VALUE* argv, VALUE self)
throw;
}
-
+
//
// Replace the contents of the given argument list with the filtered arguments.
//
@@ -343,7 +343,7 @@ IceRuby_Communicator_proxyToProperty(VALUE self, VALUE obj, VALUE str)
volatile VALUE value = createString(q->second);
callRuby(rb_hash_aset, result, key, value);
}
- return result;
+ return result;
}
ICE_RUBY_CATCH
return Qnil;
@@ -389,7 +389,23 @@ IceRuby_Communicator_addObjectFactory(VALUE self, VALUE factory, VALUE id)
ObjectFactoryPtr pof = ObjectFactoryPtr::dynamicCast(p->findObjectFactory(""));
assert(pof);
string idstr = getString(id);
- pof->add(factory, idstr);
+ pof->addObjectFactory(factory, idstr);
+ }
+ ICE_RUBY_CATCH
+ return Qnil;
+}
+
+extern "C"
+VALUE
+IceRuby_Communicator_addValueFactory(VALUE self, VALUE factory, VALUE id)
+{
+ ICE_RUBY_TRY
+ {
+ Ice::CommunicatorPtr p = getCommunicator(self);
+ ObjectFactoryPtr pof = ObjectFactoryPtr::dynamicCast(p->findObjectFactory(""));
+ assert(pof);
+ string idstr = getString(id);
+ pof->addValueFactory(factory, idstr);
}
ICE_RUBY_CATCH
return Qnil;
@@ -405,7 +421,23 @@ IceRuby_Communicator_findObjectFactory(VALUE self, VALUE id)
ObjectFactoryPtr pof = ObjectFactoryPtr::dynamicCast(p->findObjectFactory(""));
assert(pof);
string idstr = getString(id);
- return pof->find(idstr);
+ return pof->findObjectFactory(idstr);
+ }
+ ICE_RUBY_CATCH
+ return Qnil;
+}
+
+extern "C"
+VALUE
+IceRuby_Communicator_findValueFactory(VALUE self, VALUE id)
+{
+ ICE_RUBY_TRY
+ {
+ Ice::CommunicatorPtr p = getCommunicator(self);
+ ObjectFactoryPtr pof = ObjectFactoryPtr::dynamicCast(p->findObjectFactory(""));
+ assert(pof);
+ string idstr = getString(id);
+ return pof->findValueFactory(idstr);
}
ICE_RUBY_CATCH
return Qnil;
@@ -566,6 +598,8 @@ IceRuby::initCommunicator(VALUE iceModule)
rb_define_method(_communicatorClass, "identityToString", CAST_METHOD(IceRuby_Communicator_identityToString), 1);
rb_define_method(_communicatorClass, "addObjectFactory", CAST_METHOD(IceRuby_Communicator_addObjectFactory), 2);
rb_define_method(_communicatorClass, "findObjectFactory", CAST_METHOD(IceRuby_Communicator_findObjectFactory), 1);
+ rb_define_method(_communicatorClass, "addValueFactory", CAST_METHOD(IceRuby_Communicator_addValueFactory), 2);
+ rb_define_method(_communicatorClass, "findValueFactory", CAST_METHOD(IceRuby_Communicator_findValueFactory), 1);
rb_define_method(_communicatorClass, "getImplicitContext", CAST_METHOD(IceRuby_Communicator_getImplicitContext), 0);
rb_define_method(_communicatorClass, "getProperties", CAST_METHOD(IceRuby_Communicator_getProperties), 0);
rb_define_method(_communicatorClass, "getLogger", CAST_METHOD(IceRuby_Communicator_getLogger), 0);
diff --git a/ruby/src/IceRuby/ObjectFactory.cpp b/ruby/src/IceRuby/ObjectFactory.cpp
index 588158a64e3..ed37fdd86fb 100644
--- a/ruby/src/IceRuby/ObjectFactory.cpp
+++ b/ruby/src/IceRuby/ObjectFactory.cpp
@@ -21,7 +21,8 @@ IceRuby::ObjectFactory::ObjectFactory()
IceRuby::ObjectFactory::~ObjectFactory()
{
- assert(_factoryMap.empty());
+ assert(_valueFactoryMap.empty());
+ assert(_objectFactoryMap.empty());
}
Ice::ObjectPtr
@@ -54,8 +55,8 @@ IceRuby::ObjectFactory::create(const string& id)
//
// Check if the application has registered a factory for this id.
//
- FactoryMap::iterator p = _factoryMap.find(id);
- if(p != _factoryMap.end())
+ FactoryMap::iterator p = _valueFactoryMap.find(id);
+ if(p != _valueFactoryMap.end())
{
//
// Invoke the create method on the Ruby factory object.
@@ -82,10 +83,10 @@ IceRuby::ObjectFactory::destroy()
{
Lock sync(*this);
- for(FactoryMap::iterator p = _factoryMap.begin(); p != _factoryMap.end(); ++p)
+ for(FactoryMap::iterator p = _objectFactoryMap.begin(); p != _objectFactoryMap.end(); ++p)
{
//
- // Invoke the destroy method on each registered Ruby factory.
+ // Invoke the destroy method on each registered Ruby object factory.
//
try
{
@@ -96,33 +97,67 @@ IceRuby::ObjectFactory::destroy()
// Ignore.
}
}
- _factoryMap.clear();
+
+ _valueFactoryMap.clear();
+ _objectFactoryMap.clear();
+}
+
+void
+IceRuby::ObjectFactory::addValueFactory(VALUE factory, const string& id)
+{
+ Lock sync(*this);
+
+ FactoryMap::iterator p = _valueFactoryMap.find(id);
+ if(p != _valueFactoryMap.end())
+ {
+ Ice::AlreadyRegisteredException ex(__FILE__, __LINE__);
+ ex.kindOfObject = "value factory";
+ ex.id = id;
+ throw ex;
+ }
+
+ _valueFactoryMap.insert(FactoryMap::value_type(id, factory));
}
void
-IceRuby::ObjectFactory::add(VALUE factory, const string& id)
+IceRuby::ObjectFactory::addObjectFactory(VALUE factory, const string& id)
{
Lock sync(*this);
- FactoryMap::iterator p = _factoryMap.find(id);
- if(p != _factoryMap.end())
+ FactoryMap::iterator p = _valueFactoryMap.find(id);
+ if(p != _valueFactoryMap.end())
{
Ice::AlreadyRegisteredException ex(__FILE__, __LINE__);
- ex.kindOfObject = "object factory";
+ ex.kindOfObject = "value factory";
ex.id = id;
throw ex;
}
- _factoryMap.insert(FactoryMap::value_type(id, factory));
+ _valueFactoryMap.insert(FactoryMap::value_type(id, factory));
+ _objectFactoryMap.insert(FactoryMap::value_type(id, factory));
}
VALUE
-IceRuby::ObjectFactory::find(const string& id)
+IceRuby::ObjectFactory::findValueFactory(const string& id)
{
Lock sync(*this);
- FactoryMap::iterator p = _factoryMap.find(id);
- if(p == _factoryMap.end())
+ FactoryMap::iterator p = _valueFactoryMap.find(id);
+ if(p == _valueFactoryMap.end())
+ {
+ return Qnil;
+ }
+
+ return p->second;
+}
+
+VALUE
+IceRuby::ObjectFactory::findObjectFactory(const string& id)
+{
+ Lock sync(*this);
+
+ FactoryMap::iterator p = _objectFactoryMap.find(id);
+ if(p == _objectFactoryMap.end())
{
return Qnil;
}
@@ -133,7 +168,11 @@ IceRuby::ObjectFactory::find(const string& id)
void
IceRuby::ObjectFactory::mark()
{
- for(FactoryMap::iterator p = _factoryMap.begin(); p != _factoryMap.end(); ++p)
+ for(FactoryMap::iterator p = _valueFactoryMap.begin(); p != _valueFactoryMap.end(); ++p)
+ {
+ rb_gc_mark(p->second);
+ }
+ for(FactoryMap::iterator p = _objectFactoryMap.begin(); p != _objectFactoryMap.end(); ++p)
{
rb_gc_mark(p->second);
}
diff --git a/ruby/src/IceRuby/ObjectFactory.h b/ruby/src/IceRuby/ObjectFactory.h
index 152f73f8425..0d5c29a7d6a 100644
--- a/ruby/src/IceRuby/ObjectFactory.h
+++ b/ruby/src/IceRuby/ObjectFactory.h
@@ -34,14 +34,17 @@ public:
virtual void destroy();
- void add(VALUE, const std::string&);
- VALUE find(const std::string&);
+ void addValueFactory(VALUE, const std::string&);
+ VALUE findValueFactory(const std::string&);
+ void addObjectFactory(VALUE, const std::string&);
+ VALUE findObjectFactory(const std::string&);
void mark();
private:
typedef std::map<std::string, VALUE> FactoryMap;
- FactoryMap _factoryMap;
+ FactoryMap _valueFactoryMap;
+ FactoryMap _objectFactoryMap;
};
typedef IceUtil::Handle<ObjectFactory> ObjectFactoryPtr;
diff --git a/ruby/src/IceRuby/Util.cpp b/ruby/src/IceRuby/Util.cpp
index bac8daddec1..d4452e4088e 100644
--- a/ruby/src/IceRuby/Util.cpp
+++ b/ruby/src/IceRuby/Util.cpp
@@ -311,7 +311,7 @@ IceRuby::createString(const string& str)
namespace
{
-template <typename T>
+template <typename T>
struct RubyCallArgs
{
volatile VALUE val;
@@ -699,7 +699,7 @@ setExceptionMembers(const Ice::LocalException& ex, VALUE p)
m = createEncodingVersion(e.supported);
callRuby(rb_iv_set, p, "@supported", m);
}
- catch(const Ice::NoObjectFactoryException& e)
+ catch(const Ice::NoValueFactoryException& e)
{
volatile VALUE v;
v = createString(e.reason);
diff --git a/ruby/test/Ice/exceptions/AllTests.rb b/ruby/test/Ice/exceptions/AllTests.rb
index b0cf5e74293..b41430d433c 100644
--- a/ruby/test/Ice/exceptions/AllTests.rb
+++ b/ruby/test/Ice/exceptions/AllTests.rb
@@ -13,13 +13,10 @@ def test(b)
end
end
-class ObjectFactoryI
+class ValueFactoryI
def create(id)
return nil
end
-
- def destroy()
- end
end
def allTests(communicator)
@@ -29,12 +26,12 @@ def allTests(communicator)
isWin32 = true
end
- print "testing object factory registration exception... "
+ print "testing value factory registration exception... "
STDOUT.flush
- of = ObjectFactoryI.new
- communicator.addObjectFactory(of, "x")
+ vf = ValueFactoryI.new
+ communicator.addValueFactory(vf, "x")
begin
- communicator.addObjectFactory(of, "x")
+ communicator.addValueFactory(vf, "x")
test(false)
rescue Ice::AlreadyRegisteredException
end
diff --git a/ruby/test/Ice/objects/AllTests.rb b/ruby/test/Ice/objects/AllTests.rb
index 56fb00a02b1..9737bce8391 100644
--- a/ruby/test/Ice/objects/AllTests.rb
+++ b/ruby/test/Ice/objects/AllTests.rb
@@ -15,7 +15,7 @@ require './TestI.rb'
# we always need to install the factories, even for the collocated
# case.
#
-class MyObjectFactory
+class MyValueFactory
def create(type)
if type == '::Test::B'
return BI.new
@@ -34,6 +34,12 @@ class MyObjectFactory
end
fail "unknown type"
end
+end
+
+class MyObjectFactory
+ def create(type)
+ return nil
+ end
def destroy
# Nothing to do
@@ -48,12 +54,14 @@ end
def allTests(communicator)
- factory = MyObjectFactory.new
- communicator.addObjectFactory(factory, '::Test::B')
- communicator.addObjectFactory(factory, '::Test::C')
- #communicator.addObjectFactory(factory, '::Test::D')
- communicator.addObjectFactory(factory, '::Test::E')
- communicator.addObjectFactory(factory, '::Test::F')
+ factory = MyValueFactory.new
+ communicator.addValueFactory(factory, '::Test::B')
+ communicator.addValueFactory(factory, '::Test::C')
+ #communicator.addValueFactory(factory, '::Test::D')
+ communicator.addValueFactory(factory, '::Test::E')
+ communicator.addValueFactory(factory, '::Test::F')
+
+ communicator.addObjectFactory(MyObjectFactory.new, 'TestOF')
print "testing stringToProxy... "
STDOUT.flush
@@ -74,25 +82,25 @@ def allTests(communicator)
b1 = initial.getB1()
test(b1)
puts "ok"
-
+
print "getting B2... "
STDOUT.flush
b2 = initial.getB2()
test(b2)
puts "ok"
-
+
print "getting C... "
STDOUT.flush
c = initial.getC()
test(c)
puts "ok"
-
+
print "getting D... "
STDOUT.flush
d = initial.getD()
test(d)
puts "ok"
-
+
print "checking consistency... "
STDOUT.flush
test(b1 != b2)
@@ -127,7 +135,7 @@ def allTests(communicator)
test(c)
test(d)
puts "ok"
-
+
print "checking consistency... "
STDOUT.flush
test(b1 != b2)
@@ -192,7 +200,7 @@ def allTests(communicator)
h = initial.getH()
test(i)
puts "ok"
-
+
print "getting D1... "
STDOUT.flush
d1 = initial.getD1(Test::D1.new(Test::A1.new("a1"), Test::A1.new("a2"), Test::A1.new("a3"), Test::A1.new("a4")))
@@ -201,7 +209,7 @@ def allTests(communicator)
test(d1.a3.name == "a3")
test(d1.a4.name == "a4")
puts "ok"
-
+
print "throw EDerived... "
STDOUT.flush
begin
@@ -267,5 +275,15 @@ def allTests(communicator)
end
puts "ok"
+ print "testing getting ObjectFactory... "
+ STDOUT.flush
+ test(communicator.findObjectFactory('TestOF') != nil)
+ puts "ok"
+
+ print "testing getting ObjectFactory as ValueFactory... "
+ STDOUT.flush
+ test(communicator.findValueFactory('TestOF') != nil)
+ puts "ok"
+
return initial
end
diff --git a/ruby/test/Ice/slicing/objects/AllTests.rb b/ruby/test/Ice/slicing/objects/AllTests.rb
index e43f52aef98..8f356113704 100644
--- a/ruby/test/Ice/slicing/objects/AllTests.rb
+++ b/ruby/test/Ice/slicing/objects/AllTests.rb
@@ -97,7 +97,7 @@ def allTests(communicator)
#
sb = t.SBSUnknownDerivedAsSBaseCompact()
test(false)
- rescue Ice::NoObjectFactoryException
+ rescue Ice::NoValueFactoryException
# Expected.
rescue
test(false)
@@ -114,7 +114,7 @@ def allTests(communicator)
test(o.unknownTypeId == "::Test::SUnknown")
test(o._ice_slicedData != nil)
t.checkSUnknown(o)
- rescue Ice::NoObjectFactoryException
+ rescue Ice::NoValueFactoryException
test(t.ice_getEncodingVersion() == Ice::Encoding_1_0)
rescue Ice::Exception
test(false)
diff --git a/slice/Ice/Communicator.ice b/slice/Ice/Communicator.ice
index ada445e75e6..2b30ac6fd6b 100644
--- a/slice/Ice/Communicator.ice
+++ b/slice/Ice/Communicator.ice
@@ -15,6 +15,7 @@
#include <Ice/InstrumentationF.ice>
#include <Ice/ObjectAdapterF.ice>
#include <Ice/ObjectFactory.ice>
+#include <Ice/ValueFactory.ice>
#include <Ice/RouterF.ice>
#include <Ice/LocatorF.ice>
#include <Ice/PluginF.ice>
@@ -46,6 +47,7 @@ module Ice
* @see ObjectAdapter
* @see Properties
* @see ObjectFactory
+ * @see ValueFactory
*
**/
["clr:implements:_System.IDisposable"]
@@ -296,10 +298,10 @@ local interface Communicator
* hierarchy until it finds a type that is recognized by a factory,
* or it reaches the least-derived type. If no factory is found that
* can create an instance, the run time throws
- * {@link NoObjectFactoryException}.</p>
+ * {@link NoValueFactoryException}.</p>
*
* <p>If the object uses the "compact" format, Ice immediately raises
- * {@link NoObjectFactoryException}.</p>
+ * {@link NoValueFactoryException}.</p>
*
* <p>The following order is used to locate a factory for a type:</p>
*
@@ -332,6 +334,57 @@ local interface Communicator
/**
*
+ * <p>Add a value factory to this communicator. Installing a
+ * factory with an id for which a factory is already registered
+ * throws {@link AlreadyRegisteredException}.</p>
+ *
+ * <p>When unmarshaling an Ice value, the Ice run time reads the
+ * most-derived type id off the wire and attempts to create an
+ * instance of the type using a factory. If no instance is created,
+ * either because no factory was found, or because all factories
+ * returned nil, the behavior of the Ice run time depends on the
+ * format with which the value was marshaled:</p>
+ *
+ * <p>If the value uses the "sliced" format, Ice ascends the class
+ * hierarchy until it finds a type that is recognized by a factory,
+ * or it reaches the least-derived type. If no factory is found that
+ * can create an instance, the run time throws
+ * {@link NoValueFactoryException}.</p>
+ *
+ * <p>If the value uses the "compact" format, Ice immediately raises
+ * {@link NoValueFactoryException}.</p>
+ *
+ * <p>The following order is used to locate a factory for a type:</p>
+ *
+ * <ol>
+ *
+ * <li>The Ice run-time looks for a factory registered
+ * specifically for the type.</li>
+ *
+ * <li>If no instance has been created, the Ice run-time looks
+ * for the default factory, which is registered with an empty type id.
+ * </li>
+ *
+ * <li>If no instance has been created by any of the preceding
+ * steps, the Ice run-time looks for a factory that may have been
+ * statically generated by the language mapping for non-abstract classes.
+ * </li>
+ *
+ * </ol>
+ *
+ * @param factory The factory to add.
+ *
+ * @param id The type id for which the factory can create instances, or
+ * an empty string for the default factory.
+ *
+ * @see #findValueFactory
+ * @see ValueFactory
+ *
+ **/
+ void addValueFactory(ValueFactory factory, ["objc:param:sliceId"] string id);
+
+ /**
+ *
* Find an object factory registered with this communicator.
*
* @param id The type id for which the factory can create instances,
@@ -347,6 +400,22 @@ local interface Communicator
["cpp:const"] ObjectFactory findObjectFactory(string id);
/**
+ *
+ * Find an value factory registered with this communicator.
+ *
+ * @param id The type id for which the factory can create instances,
+ * or an empty string for the default factory.
+ *
+ * @return The value factory, or null if no value factory was
+ * found for the given id.
+ *
+ * @see #addValueFactory
+ * @see ValueFactory
+ *
+ **/
+ ["cpp:const"] ValueFactory findValueFactory(string id);
+
+ /**
* Get the implicit context associated with this communicator.
*
* @return The implicit context associated with this communicator;
diff --git a/slice/Ice/LocalException.ice b/slice/Ice/LocalException.ice
index 1677ffee949..9997ea09597 100644
--- a/slice/Ice/LocalException.ice
+++ b/slice/Ice/LocalException.ice
@@ -69,7 +69,7 @@ local exception CollocationOptimizationException
* the Ice run time.
*
* This exception is raised if an attempt is made to register a
- * servant, servant locator, facet, object factory, plug-in, object
+ * servant, servant locator, facet, value factory, plug-in, object
* adapter, object, or user exception factory more than once for the
* same ID.
*
@@ -80,7 +80,7 @@ local exception AlreadyRegisteredException
/**
*
* The kind of object that is registered already: "servant",
- * "servant locator", "object factory", "plug-in",
+ * "servant locator", "value factory", "plug-in",
* "object adapter", "object", or "user exception factory".
*
**/
@@ -100,7 +100,7 @@ local exception AlreadyRegisteredException
* registered with the Ice run time or Ice locator.
*
* This exception is raised if an attempt is made to remove a servant,
- * servant locator, facet, object factory, plug-in, object adapter,
+ * servant locator, facet, value factory, plug-in, object adapter,
* object, or user exception factory that is not currently registered.
*
* It's also raised if the Ice locator can't find an object or object
@@ -114,7 +114,7 @@ local exception NotRegisteredException
/**
*
* The kind of object that could not be removed: "servant",
- * "servant locator", "object factory", "plug-in",
+ * "servant locator", "value factory", "plug-in",
* "object adapter", "object", or "user exception factory".
*
**/
@@ -888,16 +888,16 @@ local exception UnmarshalOutOfBoundsException extends MarshalException
/**
*
- * This exception is raised if no suitable object factory was found during
+ * This exception is raised if no suitable value factory was found during
* unmarshaling of a Slice class instance.
*
- * @see ObjectFactory
- * @see Communicator#addObjectFactory
- * @see Communicator#findObjectFactory
+ * @see ValueFactory
+ * @see Communicator#addValueFactory
+ * @see Communicator#findValueFactory
*
**/
["cpp:ice_print"]
-local exception NoObjectFactoryException extends MarshalException
+local exception NoValueFactoryException extends MarshalException
{
/**
*
diff --git a/slice/Ice/ObjectFactory.ice b/slice/Ice/ObjectFactory.ice
index e54fd9cb26a..b1d3f2dae6b 100644
--- a/slice/Ice/ObjectFactory.ice
+++ b/slice/Ice/ObjectFactory.ice
@@ -26,7 +26,7 @@ module Ice
* @see Freeze
*
**/
-["cpp11:type:std::function<Ice::ValuePtr (const std::string& type)>"]
+
local interface ObjectFactory
{
/**
diff --git a/slice/Ice/ValueFactory.ice b/slice/Ice/ValueFactory.ice
new file mode 100644
index 00000000000..0afa62f020f
--- /dev/null
+++ b/slice/Ice/ValueFactory.ice
@@ -0,0 +1,52 @@
+// **********************************************************************
+//
+// 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.
+//
+// **********************************************************************
+
+#pragma once
+
+[["cpp:header-ext:h", "objc:header-dir:objc"]]
+
+["objc:prefix:ICE"]
+module Ice
+{
+
+/**
+ *
+ * A factory for values. Value factories are used in several
+ * places, for example, when receiving "values by value" and
+ * when Freeze restores a persistent value. Value factories
+ * must be implemented by the application writer, and registered
+ * with the communicator.
+ *
+ * @see Freeze
+ *
+ **/
+["delegate"]
+local interface ValueFactory
+{
+ /**
+ *
+ * Create a new value for a given value type. The type is the
+ * absolute Slice type id, i.e., the id relative to the
+ * unnamed top-level Slice module. For example, the absolute
+ * Slice type id for interfaces of type <tt>Bar</tt> in the module
+ * <tt>Foo</tt> is <tt>::Foo::Bar</tt>.
+ *
+ * <p class="Note">The leading "<tt>::</tt>" is required.
+ *
+ * @param type The value type.
+ *
+ * @return The value created for the given type, or nil if the
+ * factory is unable to create the value.
+ *
+ **/
+ Value create(string type);
+};
+
+};
+