diff options
Diffstat (limited to 'ACE/TAO/orbsvcs/tests/Security/Bug_2908_Regression/Client_Task.cpp')
-rw-r--r-- | ACE/TAO/orbsvcs/tests/Security/Bug_2908_Regression/Client_Task.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/ACE/TAO/orbsvcs/tests/Security/Bug_2908_Regression/Client_Task.cpp b/ACE/TAO/orbsvcs/tests/Security/Bug_2908_Regression/Client_Task.cpp new file mode 100644 index 00000000000..94e400077c2 --- /dev/null +++ b/ACE/TAO/orbsvcs/tests/Security/Bug_2908_Regression/Client_Task.cpp @@ -0,0 +1,41 @@ +// +// $Id$ +// + +#include "Client_Task.h" +#include "MessengerC.h" + +ACE_RCSID(Muxing, Client_Task, "$Id$") + +Client_Task::Client_Task ( + CORBA::ORB_ptr corb, + Messenger_ptr messenger, + ACE_Thread_Manager *thr_mgr) + : ACE_Task_Base (thr_mgr) + , result_ (0) + , corb_ (CORBA::ORB::_duplicate (corb)) + , messenger_ (Messenger::_duplicate (messenger)) +{ +} + +int +Client_Task::svc (void) +{ + try + { + // call message + messenger_->call_message("user"); + } + catch(const CORBA::NO_PERMISSION ex) + { + result_ = 1; + ex._tao_print_exception ("ERROR: Caught CORBA::NO_PERMISSION exception"); + } + catch(const CORBA::Exception &ex) + { + result_ = 1; + ex._tao_print_exception ("Caught exception:"); + } + + return 0; +} |