summaryrefslogtreecommitdiff
path: root/TAO/tests/LongUpcalls/Manager_Handler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tests/LongUpcalls/Manager_Handler.cpp')
-rw-r--r--TAO/tests/LongUpcalls/Manager_Handler.cpp53
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;
+}
+