#include "Hello.h" #include "tao/ORB_Core.h" #include "tao/ORB_Table.h" #include "tao/ORB_Core_Auto_Ptr.h" Hello::Hello (CORBA::ORB_ptr orb) : orb_ (CORBA::ORB::_duplicate (orb)) { } char * Hello::get_string () { ACE_ERROR ((LM_ERROR, "(%P|%t) ERROR: Unexpected Upcall in process ..\n")); return CORBA::string_dup ("Hello there!"); } void Hello::shutdown () { // Give the client thread time to return from the collocated // call to this method before shutting down the ORB. We sleep // to avoid BAD_INV_ORDER exceptions on fast dual processor machines. ACE_OS::sleep (1); this->orb_->shutdown (false); }