#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 22 of file PI.cpp. References ACE_NEW_THROW_EX, ACE_Service_Config::process_directive(), PortableInterceptor::register_orb_initializer(), and TAO_debug_level.
00023 {
00024 #if TAO_HAS_INTERCEPTORS == 1
00025 ACE_Service_Config::process_directive (ace_svc_desc_TAO_ClientRequestInterceptor_Adapter_Factory_Impl);
00026
00027 ACE_Service_Config::process_directive (ace_svc_desc_TAO_PICurrent_Loader);
00028 #endif /* TAO_HAS_INTERCEPTORS == 1 */
00029
00030 int const status = ACE_Service_Config::process_directive (
00031 ace_svc_desc_ORBInitializer_Registry);
00032
00033 #if TAO_HAS_INTERCEPTORS == 1
00034 PortableInterceptor::ORBInitializer_ptr temp_orb_initializer =
00035 PortableInterceptor::ORBInitializer::_nil ();
00036
00037 PortableInterceptor::ORBInitializer_var orb_initializer;
00038
00039 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
00051 orb_initializer = temp_orb_initializer;
00052
00053 PortableInterceptor::register_orb_initializer (orb_initializer.in ()
00054 );
00055 }
00056 catch (const ::CORBA::Exception& ex)
00057 {
00058 if (TAO_debug_level > 0)
00059 {
00060 ex._tao_print_exception ("(%P | %t) Caught exception:");
00061 }
00062 return -1;
00063 }
00064 #endif /* TAO_HAS_INTERCEPTORS == 1 */
00065 return status;
00066 }
|
1.3.6