diff options
Diffstat (limited to 'TAO/tests/RTCORBA/Client_Propagated/Client_ORBInitializer.cpp')
-rw-r--r-- | TAO/tests/RTCORBA/Client_Propagated/Client_ORBInitializer.cpp | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/TAO/tests/RTCORBA/Client_Propagated/Client_ORBInitializer.cpp b/TAO/tests/RTCORBA/Client_Propagated/Client_ORBInitializer.cpp new file mode 100644 index 00000000000..11463bd4333 --- /dev/null +++ b/TAO/tests/RTCORBA/Client_Propagated/Client_ORBInitializer.cpp @@ -0,0 +1,51 @@ +// -*- C++ -*- +// +// $Id$ +// + +#include "Client_ORBInitializer.h" +#include "interceptors.h" + +ACE_RCSID (Client_Propagated, Client_ORBInitializer, "$Id$") + +Client_ORBInitializer::Client_ORBInitializer (void) +{ +} + +void +Client_ORBInitializer::pre_init ( + PortableInterceptor::ORBInitInfo_ptr + TAO_ENV_ARG_DECL_NOT_USED) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ +} + +void +Client_ORBInitializer::post_init ( + PortableInterceptor::ORBInitInfo_ptr info + TAO_ENV_ARG_DECL) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + TAO_ENV_ARG_DEFN; + + CORBA::String_var orb_id = + info->orb_id (ACE_TRY_ENV); + ACE_CHECK; + + PortableInterceptor::ClientRequestInterceptor_ptr interceptor = + PortableInterceptor::ClientRequestInterceptor::_nil (); + + // Install the Echo client request interceptor + ACE_NEW_THROW_EX (interceptor, + Client_Request_Interceptor (orb_id.in ()), + CORBA::NO_MEMORY ()); + ACE_CHECK; + + PortableInterceptor::ClientRequestInterceptor_var + client_interceptor = interceptor; + + info->add_client_request_interceptor (client_interceptor.in (), + ACE_TRY_ENV); + ACE_CHECK; +} + |