diff options
author | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-04-01 03:09:47 +0000 |
---|---|---|
committer | irfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-04-01 03:09:47 +0000 |
commit | 26f61efb49870a0de88bdf3c6613d518c4d0cb9f (patch) | |
tree | feee3c2b93bdd9a0bdce697b40d6285b0000b222 | |
parent | 6de0d55e2917f53936ad69ff69c9b83e24f95402 (diff) | |
download | ATCD-26f61efb49870a0de88bdf3c6613d518c4d0cb9f.tar.gz |
ChangeLogTag: Fri Mar 31 20:59:31 2000 Irfan Pyarali <irfan@cs.wustl.edu>
-rw-r--r-- | TAO/ChangeLogs/ChangeLog-02a | 18 | ||||
-rw-r--r-- | TAO/tao/Object_Adapter.cpp | 19 |
2 files changed, 29 insertions, 8 deletions
diff --git a/TAO/ChangeLogs/ChangeLog-02a b/TAO/ChangeLogs/ChangeLog-02a index 0304da6e98a..50771186a9b 100644 --- a/TAO/ChangeLogs/ChangeLog-02a +++ b/TAO/ChangeLogs/ChangeLog-02a @@ -1,9 +1,19 @@ +Fri Mar 31 20:59:31 2000 Irfan Pyarali <irfan@cs.wustl.edu> + + * tao/Object_Adapter.cpp (activate_poa): AdapterNonExistent + exceptions raised while processing a request should be caught + and converted into OBJECT_NOT_EXIST. Remember that + AdapterNonExistent is a server side exception and the client + does not know about this exception. If this conversion does not + take place, it will get handled as a UNKNOWN exception on the + client. Thanks to Carlos for pointing this out. + Fri Mar 31 20:30:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> * TAO_IDL/be/be_visitor_interface/smart_proxy_ch.cpp: Added a <_proxy_> member per TAO_interface_Smart_PRoxy_Base so that the <base_proxy_> got be narrowed and stored for future - invocations. Also added generation of export macros for the + invocations. Also added generation of export macros for the smart proxy classes. Thanks to Aniruddha Gokhale <gokhale@research.bell-labs.com> for pointing this out. * TAO_IDL/be/be_visitor_interface/smart_proxy_cs.cpp (get_proxy): @@ -15,15 +25,15 @@ Fri Mar 31 20:30:00 2000 Kirthika Parameswaran <kirthika@cs.wustl.edu> harm the design in any way because the factory is unregistered only during the first invocation of the smart proxy. And anyways, to use create a smart proxy its necessary to create a - smart proxy factory. + smart proxy factory. * tao/TAO.dsp: * tao/TAO_Static.dsp: Added Smart_Proxies.{i,h,cpp} to both these workspaces. * docs/Smart_Proxies.html: Updated the documentation. - + Fri Mar 31 18:36:34 2000 Balachandran Natarajan <bala@cs.wustl.edu> - * tao/GIOP_Message_Accept_State.cpp (write_reply_header): + * tao/GIOP_Message_Accept_State.cpp (write_reply_header): * tao/GIOP_Message_Accept_State.h: * tao/GIOP_Message_Accept_State.i: * tao/GIOP_Message_Acceptors.cpp: diff --git a/TAO/tao/Object_Adapter.cpp b/TAO/tao/Object_Adapter.cpp index b46c990226f..c11356dc73e 100644 --- a/TAO/tao/Object_Adapter.cpp +++ b/TAO/tao/Object_Adapter.cpp @@ -360,9 +360,20 @@ TAO_Object_Adapter::activate_poa (const poa_name &folded_name, iterator != end; ++iterator) { - TAO_POA *current = parent->find_POA_i (*iterator, - 1, - ACE_TRY_ENV); + TAO_POA *current = 0; + + ACE_TRY + { + current = parent->find_POA_i (*iterator, + 1, + ACE_TRY_ENV); + ACE_TRY_CHECK; + } + ACE_CATCH (PortableServer::POA::AdapterNonExistent, ex) + { + return -1; + } + ACE_ENDTRY; ACE_CHECK_RETURN (-1); parent = current; @@ -1096,7 +1107,7 @@ PortableServer::ObjectId * TAO_POA_Current_Impl::get_object_id (CORBA::Environment &) { PortableServer::ObjectId *objid = 0; - + // Create a new one and pass it back ACE_NEW_RETURN (objid, PortableServer::ObjectId (this->object_id_), |