diff options
Diffstat (limited to 'TAO/tests/LongUpcalls/Manager_Handler.cpp')
-rw-r--r-- | TAO/tests/LongUpcalls/Manager_Handler.cpp | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/TAO/tests/LongUpcalls/Manager_Handler.cpp b/TAO/tests/LongUpcalls/Manager_Handler.cpp new file mode 100644 index 00000000000..c1532a2eb86 --- /dev/null +++ b/TAO/tests/LongUpcalls/Manager_Handler.cpp @@ -0,0 +1,53 @@ +// +// $Id$ +// + +#include "Manager_Handler.h" + +ACE_RCSID(LongUpcalls, Manager_Handler, "$Id$") + +Manager_Handler::Manager_Handler (Test::Manager_ptr manager, + Test::Controller_ptr controller) + : manager_ (Test::Manager::_duplicate (manager)) + , controller_ (Test::Controller::_duplicate (controller)) +{ +} + +void +Manager_Handler::start_workers (ACE_ENV_SINGLE_ARG_DECL) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + ACE_TRY + { + this->manager_->start_workers (CORBA::Short(10), + CORBA::Long(1000), + this->controller_.in () + ACE_ENV_ARG_PARAMETER); + ACE_TRY_CHECK; + } + ACE_CATCHANY + { + ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, + "Exception raised in nested start workers: "); + } + ACE_ENDTRY; +} + +void +Manager_Handler::start_workers_excep (::Messaging::ExceptionHolder * holder + ACE_ENV_ARG_DECL) + ACE_THROW_SPEC ((CORBA::SystemException)) +{ + ACE_TRY + { + holder->raise_exception (ACE_ENV_SINGLE_ARG_PARAMETER); + ACE_TRY_CHECK; + } + ACE_CATCHANY + { + ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, + "Exception raised in asynch start workers: "); + } + ACE_ENDTRY; +} + |