summaryrefslogtreecommitdiff
path: root/cpp/src/Ice/Object.cpp
diff options
context:
space:
mode:
authorMichi Henning <michi@zeroc.com>2003-08-06 02:32:09 +0000
committerMichi Henning <michi@zeroc.com>2003-08-06 02:32:09 +0000
commit9cd6741e46f1c21b41f1b5ce8aae65d8a67458cb (patch)
tree705a43c08974a144368e9e17cd4336945ab995e9 /cpp/src/Ice/Object.cpp
parentadding test scripts (diff)
downloadice-9cd6741e46f1c21b41f1b5ce8aae65d8a67458cb.tar.bz2
ice-9cd6741e46f1c21b41f1b5ce8aae65d8a67458cb.tar.xz
ice-9cd6741e46f1c21b41f1b5ce8aae65d8a67458cb.zip
Added ice_clone() for classes.
Diffstat (limited to 'cpp/src/Ice/Object.cpp')
-rw-r--r--cpp/src/Ice/Object.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/cpp/src/Ice/Object.cpp b/cpp/src/Ice/Object.cpp
index 660bb636dcd..6ebff405f0c 100644
--- a/cpp/src/Ice/Object.cpp
+++ b/cpp/src/Ice/Object.cpp
@@ -98,13 +98,27 @@ Ice::Object::ice_facets(const Current&) const
return v;
}
-
const ::std::string&
Ice::Object::ice_staticId()
{
return __ids[0];
}
+void
+Ice::Object::__copyMembers(ObjectPtr to) const
+{
+ IceUtil::Mutex::Lock sync(_activeFacetMapMutex);
+ to->_activeFacetMap = _activeFacetMap;
+}
+
+ObjectPtr
+Ice::Object::ice_clone() const
+{
+ ObjectPtr __p = new Ice::Object;
+ ::Ice::Object::__copyMembers(__p);
+ return __p;
+}
+
DispatchStatus
Ice::Object::___ice_isA(Incoming& __in, const Current& __current)
{