summaryrefslogtreecommitdiff
path: root/TAO/tests/RTCORBA/Banded_Connections
diff options
context:
space:
mode:
authorirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-04-16 17:57:35 +0000
committerirfan <irfan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2003-04-16 17:57:35 +0000
commit20ed9d12258ba5250f0bd27c374a1836ec9678cc (patch)
treec38dbd5e8836b7f1cc210a61c5228e8b9fd587ed /TAO/tests/RTCORBA/Banded_Connections
parent6e3819d1ab25897551c493f7481007f4b7e8dabc (diff)
downloadATCD-20ed9d12258ba5250f0bd27c374a1836ec9678cc.tar.gz
ChangeLogTag: Wed Apr 16 13:44:47 2003 Irfan Pyarali <irfan@oomworks.com>
Diffstat (limited to 'TAO/tests/RTCORBA/Banded_Connections')
-rw-r--r--TAO/tests/RTCORBA/Banded_Connections/client.cpp122
-rwxr-xr-xTAO/tests/RTCORBA/Banded_Connections/run_test.pl1
-rw-r--r--TAO/tests/RTCORBA/Banded_Connections/server.conf4
-rw-r--r--TAO/tests/RTCORBA/Banded_Connections/server.conf.xml7
-rw-r--r--TAO/tests/RTCORBA/Banded_Connections/server.cpp8
-rw-r--r--TAO/tests/RTCORBA/Banded_Connections/svc.conf6
-rw-r--r--TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml7
7 files changed, 107 insertions, 48 deletions
diff --git a/TAO/tests/RTCORBA/Banded_Connections/client.cpp b/TAO/tests/RTCORBA/Banded_Connections/client.cpp
index d772f9652a6..099b9f0427d 100644
--- a/TAO/tests/RTCORBA/Banded_Connections/client.cpp
+++ b/TAO/tests/RTCORBA/Banded_Connections/client.cpp
@@ -2,7 +2,9 @@
#include "testC.h"
#include "ace/Get_Opt.h"
+#include "ace/Task.h"
#include "tao/RTCORBA/RTCORBA.h"
+#include "tao/ORB_Core.h"
#include "../check_supported_priorities.cpp"
// Default IOR files.
@@ -101,34 +103,35 @@ invocation_exception_test (Test_ptr obj,
ACE_CHECK;
}
-int
-main (int argc, char *argv[])
+class Task : public ACE_Task_Base
{
- ACE_TRY_NEW_ENV
- {
- // Initialize ORB.
- CORBA::ORB_var orb =
- CORBA::ORB_init (argc,
- argv,
- ""
- ACE_ENV_ARG_PARAMETER);
- ACE_TRY_CHECK;
+public:
- // Parse arguments.
- int result =
- parse_args (argc,
- argv);
- if (result != 0)
- return result;
+ Task (ACE_Thread_Manager &thread_manager,
+ CORBA::ORB_ptr orb);
- // Make sure we can support multiple priorities that are required
- // for this test.
- check_supported_priorities (orb.in ());
+ int svc (void);
+
+ CORBA::ORB_var orb_;
+
+};
+
+Task::Task (ACE_Thread_Manager &thread_manager,
+ CORBA::ORB_ptr orb)
+ : ACE_Task_Base (&thread_manager),
+ orb_ (CORBA::ORB::_duplicate (orb))
+{
+}
+int
+Task::svc (void)
+{
+ ACE_TRY_NEW_ENV
+ {
// Get the RTORB.
CORBA::Object_var object =
- orb->resolve_initial_references ("RTORB"
- ACE_ENV_ARG_PARAMETER);
+ this->orb_->resolve_initial_references ("RTORB"
+ ACE_ENV_ARG_PARAMETER);
ACE_TRY_CHECK;
RTCORBA::RTORB_var rt_orb =
@@ -138,8 +141,8 @@ main (int argc, char *argv[])
// Get the RTCurrent.
object =
- orb->resolve_initial_references ("RTCurrent"
- ACE_ENV_ARG_PARAMETER);
+ this->orb_->resolve_initial_references ("RTCurrent"
+ ACE_ENV_ARG_PARAMETER);
ACE_TRY_CHECK;
RTCORBA::Current_var current =
@@ -149,8 +152,8 @@ main (int argc, char *argv[])
// Test object 1 (with CLIENT_PROPAGATED priority model).
object =
- orb->string_to_object (ior1
- ACE_ENV_ARG_PARAMETER);
+ this->orb_->string_to_object (ior1
+ ACE_ENV_ARG_PARAMETER);
ACE_TRY_CHECK;
Test_var client_propagated_obj =
@@ -158,8 +161,8 @@ main (int argc, char *argv[])
ACE_TRY_CHECK;
// Test object 2 (with SERVER_DECLARED priority model).
- object = orb->string_to_object (ior2
- ACE_ENV_ARG_PARAMETER);
+ object = this->orb_->string_to_object (ior2
+ ACE_ENV_ARG_PARAMETER);
ACE_TRY_CHECK;
Test_var server_declared_obj =
@@ -302,8 +305,67 @@ main (int argc, char *argv[])
ACE_CATCHANY
{
ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION,
- "Unexpected exception in Banded_Connections test client:");
- return 1;
+ "Unexpected exception in Banded_Connections test client:");
+ return -1;
+ }
+ ACE_ENDTRY;
+
+ return 0;
+}
+
+int
+main (int argc, char *argv[])
+{
+ ACE_TRY_NEW_ENV
+ {
+ // Initialize ORB.
+ CORBA::ORB_var orb =
+ CORBA::ORB_init (argc,
+ argv,
+ ""
+ ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+
+ // Parse arguments.
+ int result =
+ parse_args (argc,
+ argv);
+ if (result != 0)
+ return result;
+
+ // Make sure we can support multiple priorities that are required
+ // for this test.
+ check_supported_priorities (orb.in ());
+
+ // Thread Manager for managing task.
+ ACE_Thread_Manager thread_manager;
+
+ // Create task.
+ Task task (thread_manager,
+ orb.in ());
+
+ // Task activation flags.
+ long flags =
+ THR_NEW_LWP |
+ THR_JOINABLE |
+ orb->orb_core ()->orb_params ()->thread_creation_flags ();
+
+ // Activate task.
+ result =
+ task.activate (flags);
+ ACE_ASSERT (result != -1);
+ ACE_UNUSED_ARG (result);
+
+ // Wait for task to exit.
+ result =
+ thread_manager.wait ();
+ ACE_ASSERT (result != -1);
+ }
+ ACE_CATCHANY
+ {
+ ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION,
+ "Unexpected exception in Banded_Connections test client:");
+ return -1;
}
ACE_ENDTRY;
diff --git a/TAO/tests/RTCORBA/Banded_Connections/run_test.pl b/TAO/tests/RTCORBA/Banded_Connections/run_test.pl
index d3c896c28e3..aaab606acd8 100755
--- a/TAO/tests/RTCORBA/Banded_Connections/run_test.pl
+++ b/TAO/tests/RTCORBA/Banded_Connections/run_test.pl
@@ -47,7 +47,6 @@ if (PerlACE::waitforfile_timed ($iorfile2, 10) == -1)
$server = $SV->TimedWait (1);
if ($server == 2)
{
- print STDOUT "Could not change priority levels. Check user permissions. Exiting...\n";
# Mark as no longer running to avoid errors on exit.
$SV->{RUNNING} = 0;
exit $status;
diff --git a/TAO/tests/RTCORBA/Banded_Connections/server.conf b/TAO/tests/RTCORBA/Banded_Connections/server.conf
deleted file mode 100644
index 8100e1d8dd3..00000000000
--- a/TAO/tests/RTCORBA/Banded_Connections/server.conf
+++ /dev/null
@@ -1,4 +0,0 @@
-# $Id$
-#
-static Advanced_Resource_Factory "-ORBReactorType tp -ORBReactorRegistry per-priority"
-
diff --git a/TAO/tests/RTCORBA/Banded_Connections/server.conf.xml b/TAO/tests/RTCORBA/Banded_Connections/server.conf.xml
deleted file mode 100644
index b787d8faf9a..00000000000
--- a/TAO/tests/RTCORBA/Banded_Connections/server.conf.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version='1.0'?>
-<!-- Converted from ./tests/RTCORBA/Banded_Connections/server.conf by svcconf-convert.pl -->
-<ACE_Svc_Conf>
- <!-- $Id$ -->
- <!-- -->
- <static id="Advanced_Resource_Factory" params="-ORBReactorType tp -ORBReactorRegistry per-priority"/>
-</ACE_Svc_Conf>
diff --git a/TAO/tests/RTCORBA/Banded_Connections/server.cpp b/TAO/tests/RTCORBA/Banded_Connections/server.cpp
index 42a062ebb7d..792505fd819 100644
--- a/TAO/tests/RTCORBA/Banded_Connections/server.cpp
+++ b/TAO/tests/RTCORBA/Banded_Connections/server.cpp
@@ -117,7 +117,7 @@ Test_i::test_method (CORBA::Boolean client_propagated,
void
Test_i::shutdown (ACE_ENV_SINGLE_ARG_DECL)
- ACE_THROW_SPEC ((CORBA::SystemException))
+ ACE_THROW_SPEC ((CORBA::SystemException))
{
this->orb_->shutdown (0
ACE_ENV_ARG_PARAMETER);
@@ -365,7 +365,7 @@ main (int argc, char *argv[])
// Make sure we can support multiple priorities that are required
// for this test.
- check_supported_priorities (orb.in());
+ check_supported_priorities (orb.in ());
// Get the RTORB.
CORBA::Object_var object =
@@ -592,8 +592,8 @@ main (int argc, char *argv[])
ACE_CATCHANY
{
ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION,
- "Unexpected exception caught in Banded_Connections test server:");
- return 1;
+ "Unexpected exception caught in Banded_Connections test server:");
+ return -1;
}
ACE_ENDTRY;
diff --git a/TAO/tests/RTCORBA/Banded_Connections/svc.conf b/TAO/tests/RTCORBA/Banded_Connections/svc.conf
index 37973382e2c..2154375e265 100644
--- a/TAO/tests/RTCORBA/Banded_Connections/svc.conf
+++ b/TAO/tests/RTCORBA/Banded_Connections/svc.conf
@@ -1,2 +1,4 @@
-# Regular test
-static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO"
+# No options required for regular testing
+
+# For real-time testing, uncomment the following line:
+# static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM"
diff --git a/TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml b/TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml
new file mode 100644
index 00000000000..b589f90605b
--- /dev/null
+++ b/TAO/tests/RTCORBA/Banded_Connections/svc.conf.xml
@@ -0,0 +1,7 @@
+<?xml version='1.0'?>
+<!-- Converted from svc.conf by svcconf-convert.pl -->
+<ACE_Svc_Conf>
+ <!-- No options required for regular testing -->
+ <!-- For real-time testing, uncomment the following line: -->
+ <!-- static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM" -->
+</ACE_Svc_Conf>