TAO_PI_Init Class Reference

#include <PI.h>

List of all members.

Static Public Member Functions

int Initializer (void)
 Used to force the initialization of the ORB code.


Member Function Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL int TAO_PI_Init::Initializer void   )  [static]
 

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 }


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 12:52:30 2006 for TAO_PI by doxygen 1.3.6