TAO_PI_Server_Loader Class Reference

#include <PI_Server_Loader.h>

Inheritance diagram for TAO_PI_Server_Loader:

Inheritance graph
[legend]
Collaboration diagram for TAO_PI_Server_Loader:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_PI_Server_Loader (void)
 Constructor.
virtual ~TAO_PI_Server_Loader (void)
 Destructor.
virtual int init (int argc, ACE_TCHAR *[])
 Initialize the PI_Server loader hooks.

Detailed Description

Definition at line 28 of file PI_Server_Loader.h.


Constructor & Destructor Documentation

TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_PI_Server_Loader::TAO_PI_Server_Loader ( void   ) 

Constructor.

Definition at line 17 of file PI_Server_Loader.cpp.

00018 {
00019 }

TAO_PI_Server_Loader::~TAO_PI_Server_Loader ( void   )  [virtual]

Destructor.

Definition at line 21 of file PI_Server_Loader.cpp.

00022 {
00023 }


Member Function Documentation

int TAO_PI_Server_Loader::init ( int  argc,
ACE_TCHAR [] 
) [virtual]

Initialize the PI_Server loader hooks.

Register the Messaging ORBInitializer.

Reimplemented from ACE_Shared_Object.

Definition at line 26 of file PI_Server_Loader.cpp.

References CORBA::SystemException::_tao_minor_code(), ACE_NEW_THROW_EX, ACE_TRACE, CORBA::COMPLETED_NO, PortableInterceptor::register_orb_initializer(), and TAO::VMCID.

00027 {
00028   ACE_TRACE ("TAO_PI_Server_Loader::init");
00029 
00030   static bool initialized = false;
00031 
00032   // Only allow initialization once.
00033   if (initialized)
00034     return 0;
00035 
00036   initialized = true;
00037 
00038   // Register the ORB initializer.
00039   try
00040     {
00041       /// Register the Messaging ORBInitializer.
00042       PortableInterceptor::ORBInitializer_ptr temp_orb_initializer =
00043         PortableInterceptor::ORBInitializer::_nil ();
00044 
00045       ACE_NEW_THROW_EX (temp_orb_initializer,
00046                         TAO_PortableServer_ORBInitializer,
00047                         CORBA::NO_MEMORY (
00048                           CORBA::SystemException::_tao_minor_code (
00049                             TAO::VMCID,
00050                             ENOMEM),
00051                           CORBA::COMPLETED_NO));
00052 
00053       PortableInterceptor::ORBInitializer_var orb_initializer =
00054         temp_orb_initializer;
00055 
00056       PortableInterceptor::register_orb_initializer (orb_initializer.in ());
00057     }
00058   catch (const ::CORBA::Exception& ex)
00059     {
00060       ex._tao_print_exception ("Caught exception:");
00061       return -1;
00062     }
00063 
00064   return 0;
00065 }


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:42:18 2010 for TAO_PI_Server by  doxygen 1.4.7