summaryrefslogtreecommitdiff
path: root/TAO/tao/ORB.cpp
diff options
context:
space:
mode:
authorJohnny Willemsen <jwillemsen@remedy.nl>2008-11-03 11:25:24 +0000
committerJohnny Willemsen <jwillemsen@remedy.nl>2008-11-03 11:25:24 +0000
commit03f558e496a99b9ba2418987e867b4037ce40930 (patch)
tree12138fe28b01f262d6f063bd01f2da1ecbae531f /TAO/tao/ORB.cpp
parent9a1c8716d2ffa6e3922149df7a519466cc9afb18 (diff)
downloadATCD-03f558e496a99b9ba2418987e867b4037ce40930.tar.gz
Mon Nov 3 10:24:00 UTC 2008 Johnny Willemsen <jwillemsen@remedy.nl>
Diffstat (limited to 'TAO/tao/ORB.cpp')
-rw-r--r--TAO/tao/ORB.cpp18
1 files changed, 16 insertions, 2 deletions
diff --git a/TAO/tao/ORB.cpp b/TAO/tao/ORB.cpp
index 5b7d8eea82b..6b792defa56 100644
--- a/TAO/tao/ORB.cpp
+++ b/TAO/tao/ORB.cpp
@@ -1017,6 +1017,21 @@ CORBA::ORB::register_initial_reference (const char * id, CORBA::Object_ptr obj)
if (table.register_initial_reference (id, obj) == -1)
throw ::CORBA::ORB::InvalidName ();
}
+
+CORBA::Object_ptr
+CORBA::ORB::unregister_initial_reference (const char * id)
+{
+ if (id == 0 || ACE_OS::strlen (id) == 0)
+ throw ::CORBA::ORB::InvalidName ();
+
+ TAO_Object_Ref_Table &table = this->orb_core_->object_ref_table ();
+ CORBA::Object_ptr obj = table.unregister_initial_reference (id);
+
+ if (CORBA::is_nil (obj))
+ throw ::CORBA::ORB::InvalidName ();
+
+ return obj;
+}
#endif
CORBA::ORB::ObjectIdList_ptr
@@ -1024,8 +1039,7 @@ CORBA::ORB::list_initial_services (void)
{
this->check_shutdown ();
- return
- this->orb_core ()->list_initial_references ();
+ return this->orb_core ()->list_initial_references ();
}
void