diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-01-23 17:13:14 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2001-01-23 17:13:14 +0000 |
commit | 393c54c845640cf4db830c156d0a73776e859cc5 (patch) | |
tree | 3831c655544e353df08361e8c2e61d7c3e14f117 /TAO/tao/LocalObject.cpp | |
parent | dca05965e1a89e48b7e80c73dff9bc8aac256079 (diff) | |
download | ATCD-393c54c845640cf4db830c156d0a73776e859cc5.tar.gz |
ChangeLogTag: Tue Jan 23 11:08:00 2001 Jeff Parsons <parsons@cs.wustl.edu>
Diffstat (limited to 'TAO/tao/LocalObject.cpp')
-rw-r--r-- | TAO/tao/LocalObject.cpp | 66 |
1 files changed, 43 insertions, 23 deletions
diff --git a/TAO/tao/LocalObject.cpp b/TAO/tao/LocalObject.cpp index ef92b95124a..6920b3c6638 100644 --- a/TAO/tao/LocalObject.cpp +++ b/TAO/tao/LocalObject.cpp @@ -5,12 +5,10 @@ #include "tao/LocalObject.h" #include "tao/Stub.h" #include "tao/debug.h" - -#if (TAO_HAS_INTERFACE_REPOSITORY == 1) -#include "tao/InterfaceC.h" -#endif /* TAO_HAS_INTERFACE_REPOSITORY == 1 */ +#include "tao/IFR_Client_Adapter.h" #include "ace/Auto_Ptr.h" +#include "ace/Dynamic_Service.h" #if !defined (__ACE_INLINE__) # include "tao/LocalObject.i" @@ -103,44 +101,66 @@ CORBA_LocalObject::_non_existent (CORBA_Environment &) void CORBA_LocalObject::_create_request (CORBA::Context_ptr, - const CORBA::Char *, - CORBA::NVList_ptr, - CORBA::NamedValue_ptr, - CORBA::Request_ptr &, - CORBA::Flags, - CORBA_Environment &ACE_TRY_ENV) + const CORBA::Char *, + CORBA::NVList_ptr, + CORBA::NamedValue_ptr, + CORBA::Request_ptr &, + CORBA::Flags, + CORBA_Environment &ACE_TRY_ENV) { ACE_THROW (CORBA::NO_IMPLEMENT ()); } void CORBA_LocalObject::_create_request (CORBA::Context_ptr, - const CORBA::Char *, - CORBA::NVList_ptr, - CORBA::NamedValue_ptr, - CORBA::ExceptionList_ptr, - CORBA::ContextList_ptr, - CORBA::Request_ptr &, - CORBA::Flags, - CORBA_Environment &ACE_TRY_ENV) + const CORBA::Char *, + CORBA::NVList_ptr, + CORBA::NamedValue_ptr, + CORBA::ExceptionList_ptr, + CORBA::ContextList_ptr, + CORBA::Request_ptr &, + CORBA::Flags, + CORBA_Environment &ACE_TRY_ENV) { ACE_THROW (CORBA::NO_IMPLEMENT ()); } CORBA::Request_ptr CORBA_LocalObject::_request (const CORBA::Char *, - CORBA_Environment &ACE_TRY_ENV) + CORBA_Environment &ACE_TRY_ENV) { ACE_THROW_RETURN (CORBA::NO_IMPLEMENT (), 0); } -#if (TAO_HAS_INTERFACE_REPOSITORY == 1) -IR_InterfaceDef_ptr +CORBA_IRObject_ptr +CORBA_LocalObject::_get_interface_def (CORBA_Environment &ACE_TRY_ENV) +{ + TAO_IFR_Client_Adapter *adapter = + ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance ( + TAO_ORB_Core::ifr_client_adapter_name () + ); + + CORBA::ORB_var orb = this->_stubobj ()->servant_orb_var (); + + return adapter->get_interface_def (orb.in (), + this->_interface_repository_id (), + ACE_TRY_ENV); +} + +IR_InterfaceDef * CORBA_LocalObject::_get_interface (CORBA_Environment &ACE_TRY_ENV) { - ACE_THROW_RETURN (CORBA::NO_IMPLEMENT (), 0); + TAO_IFR_Client_Adapter *adapter = + ACE_Dynamic_Service<TAO_IFR_Client_Adapter>::instance ( + TAO_ORB_Core::ifr_client_adapter_name () + ); + + CORBA::ORB_var orb = this->_stubobj ()->servant_orb_var (); + + return adapter->get_interface (orb.in (), + this->_interface_repository_id (), + ACE_TRY_ENV); } -#endif /* TAO_HAS_INTERFACE_REPOSITORY */ CORBA::ImplementationDef_ptr CORBA_LocalObject::_get_implementation (CORBA_Environment &ACE_TRY_ENV) |