#include <Activator_Loader.h>
Inheritance diagram for ImR_Activator_Loader:
Public Member Functions | |
ImR_Activator_Loader (void) | |
virtual int | init (int argc, ACE_TCHAR *argv[]) |
virtual int | fini (void) |
virtual CORBA::Object_ptr | create_object (CORBA::ORB_ptr orb, int argc, ACE_TCHAR *argv[]) |
int | run (void) |
Private Member Functions | |
ImR_Activator_Loader (const ImR_Activator_Loader &) | |
ImR_Activator_Loader & | operator= (const ImR_Activator_Loader &) |
Private Attributes | |
ImR_Activator_i | service_ |
Activator_Options | opts_ |
ACE_Auto_Ptr< ImR_Activator_ORB_Runner > | runner_ |
Definition at line 21 of file Activator_Loader.h.
ImR_Activator_Loader::ImR_Activator_Loader | ( | void | ) |
ImR_Activator_Loader::ImR_Activator_Loader | ( | const ImR_Activator_Loader & | ) | [private] |
virtual CORBA::Object_ptr ImR_Activator_Loader::create_object | ( | CORBA::ORB_ptr | orb, | |
int | argc, | |||
ACE_TCHAR * | argv[] | |||
) | [virtual] |
Implements TAO_Object_Loader.
int ImR_Activator_Loader::fini | ( | void | ) | [virtual] |
Reimplemented from ACE_Shared_Object.
Definition at line 60 of file Activator_Loader.cpp.
References ACE_ASSERT, ImR_Activator_i::fini(), ACE_Auto_Basic_Ptr< X >::reset(), runner_, and service_.
00061 { 00062 ACE_ASSERT (this->runner_.get() != 0); 00063 try 00064 { 00065 int ret = this->service_.fini (); 00066 00067 this->runner_->wait (); 00068 this->runner_.reset (0); 00069 return ret; 00070 } 00071 catch (const CORBA::Exception&) 00072 { 00073 return -1; 00074 } 00075 }
int ImR_Activator_Loader::init | ( | int | argc, | |
ACE_TCHAR * | argv[] | |||
) | [virtual] |
Reimplemented from ACE_Shared_Object.
Definition at line 34 of file Activator_Loader.cpp.
References ACE_ASSERT, ImR_Activator_i::init(), Activator_Options::init(), opts_, ACE_Auto_Basic_Ptr< X >::reset(), runner_, and service_.
00035 { 00036 try 00037 { 00038 int err = this->opts_.init (argc, argv); 00039 if (err != 0) 00040 return -1; 00041 00042 // Creates it's own internal orb, which we must run later 00043 err = this->service_.init (this->opts_); 00044 if (err != 0) 00045 return -1; 00046 00047 // Create a thread in which to run the service 00048 ACE_ASSERT (this->runner_.get () == 0); 00049 this->runner_.reset (new ImR_Activator_ORB_Runner (*this)); 00050 this->runner_->activate (); 00051 } 00052 catch (const CORBA::Exception&) 00053 { 00054 return -1; 00055 } 00056 return 0; 00057 }
ImR_Activator_Loader& ImR_Activator_Loader::operator= | ( | const ImR_Activator_Loader & | ) | [private] |
int ImR_Activator_Loader::run | ( | void | ) |
Definition at line 86 of file Activator_Loader.cpp.
References ACE_ERROR, LM_ERROR, ImR_Activator_i::run(), and service_.
Referenced by ImR_Activator_ORB_Runner::svc().
00087 { 00088 try 00089 { 00090 return this->service_.run (); 00091 } 00092 catch (...) 00093 { 00094 ACE_ERROR ((LM_ERROR, "Exception in ImR_Locator_ORB_Runner()\n")); 00095 return -1; 00096 } 00097 }
Activator_Options ImR_Activator_Loader::opts_ [private] |