#include <PI.h>
Static Public Member Functions | |
int | Initializer (void) |
Used to force the initialization of the ORB code. |
|
Used to force the initialization of the ORB code. Register the PI ORBInitializer. Definition at line 21 of file PI.cpp. References ACE_ANY_EXCEPTION, ACE_CATCHANY, ACE_DECLARE_NEW_CORBA_ENV, ACE_ENDTRY, ACE_ENV_ARG_PARAMETER, ACE_NEW_THROW_EX, ACE_PRINT_EXCEPTION, ACE_TRY, ACE_TRY_CHECK, ACE_Service_Config::process_directive(), PortableInterceptor::register_orb_initializer(), and TAO_debug_level.
00022 { 00023 #if TAO_HAS_INTERCEPTORS == 1 00024 ACE_Service_Config::process_directive (ace_svc_desc_TAO_ClientRequestInterceptor_Adapter_Factory_Impl); 00025 00026 ACE_Service_Config::process_directive (ace_svc_desc_TAO_PICurrent_Loader); 00027 #endif /* TAO_HAS_INTERCEPTORS == 1 */ 00028 00029 int const status = ACE_Service_Config::process_directive ( 00030 ace_svc_desc_ORBInitializer_Registry); 00031 00032 #if TAO_HAS_INTERCEPTORS == 1 00033 PortableInterceptor::ORBInitializer_ptr temp_orb_initializer = 00034 PortableInterceptor::ORBInitializer::_nil (); 00035 00036 PortableInterceptor::ORBInitializer_var orb_initializer; 00037 00038 ACE_DECLARE_NEW_CORBA_ENV; 00039 ACE_TRY 00040 { 00041 /// Register the PI ORBInitializer. 00042 00043 ACE_NEW_THROW_EX (temp_orb_initializer, 00044 TAO_PI_ORBInitializer, 00045 CORBA::NO_MEMORY ( 00046 CORBA::SystemException::_tao_minor_code ( 00047 TAO::VMCID, 00048 ENOMEM), 00049 CORBA::COMPLETED_NO)); 00050 ACE_TRY_CHECK; 00051 00052 orb_initializer = temp_orb_initializer; 00053 00054 PortableInterceptor::register_orb_initializer (orb_initializer.in () 00055 ACE_ENV_ARG_PARAMETER); 00056 ACE_TRY_CHECK; 00057 } 00058 ACE_CATCHANY 00059 { 00060 if (TAO_debug_level > 0) 00061 { 00062 ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, 00063 "(%P | %t) Caught exception:"); 00064 } 00065 return -1; 00066 } 00067 ACE_ENDTRY; 00068 #endif /* TAO_HAS_INTERCEPTORS == 1 */ 00069 return status; 00070 } |