summaryrefslogtreecommitdiff
path: root/TAO/tests/Cubit/CORBAplus
diff options
context:
space:
mode:
authornobody <nobody@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-04-14 05:47:01 +0000
committernobody <nobody@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-04-14 05:47:01 +0000
commit1bda2ed944f06e6ef20d483549409070b9bae505 (patch)
tree4b5602aeaad1dab3e6b4db752f91311a9d8ad619 /TAO/tests/Cubit/CORBAplus
parentea56952b7880274cd4d3a4b84e39794b0521942c (diff)
downloadATCD-ACE-4_4_40.tar.gz
This commit was manufactured by cvs2svn to create tag 'ACE-4_4_40'.ACE-4_4_40
Diffstat (limited to 'TAO/tests/Cubit/CORBAplus')
-rw-r--r--TAO/tests/Cubit/CORBAplus/IDL_Cubit/Makefile90
-rw-r--r--TAO/tests/Cubit/CORBAplus/IDL_Cubit/README54
-rw-r--r--TAO/tests/Cubit/CORBAplus/IDL_Cubit/clnt.cpp725
-rw-r--r--TAO/tests/Cubit/CORBAplus/IDL_Cubit/clnt.h135
-rw-r--r--TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit.idl71
-rw-r--r--TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.cpp174
-rw-r--r--TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.h107
-rw-r--r--TAO/tests/Cubit/CORBAplus/IDL_Cubit/svr.cpp141
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/Makefile23
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/README58
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Makefile148
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.cpp355
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.h50
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp59
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/client/cubit.idl39
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/server/Makefile67
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit.idl39
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.cpp78
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.h50
-rw-r--r--TAO/tests/Cubit/CORBAplus/MT_Cubit/server/svr.cpp284
20 files changed, 0 insertions, 2747 deletions
diff --git a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/Makefile b/TAO/tests/Cubit/CORBAplus/IDL_Cubit/Makefile
deleted file mode 100644
index 99cbc857d2e..00000000000
--- a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/Makefile
+++ /dev/null
@@ -1,90 +0,0 @@
-#----------------------------------------------------------------------------
-# $Id$
-#
-#----------------------------------------------------------------------------
-
-#----------------------------------------------------------------------------
-# Local macros
-#----------------------------------------------------------------------------
-
-LDLIBS = -lcorba -lunixsvc -lpbroker -lboadc -lnaming -llifecycl -lfsstream
-
-IDL_SRC = cubit.cpp cubit_s.cpp
-PROG_SRCS = $(IDL_SRC) svr.cpp clnt.cpp
-
-LSRC = $(PROG_SRCS)
-
-CUBIT_SVR_OBJS = cubit.o cubit_s.o svr.o cubit_i.o
-CUBIT_CLT_OBJS = cubit.o clnt.o
-
-BIN = svr clnt
-BUILD = $(BIN)
-VLDLIBS = $(LDLIBS:%=%$(VAR))
-VBIN = $(BIN:%=%$(VAR))
-
-#----------------------------------------------------------------------------
-# Include macros and targets
-#----------------------------------------------------------------------------
-
-exceptions = 1
-
-#include $(PBHOME)/make/make.cfg
-
-include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU
-include $(ACE_ROOT)/include/makeinclude/macros.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.common.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU
-#include $(ACE_ROOT)/include/makeinclude/rules.bin.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.local.GNU
-
-#$(VDIR)%.o: %.C
-#VOBJS = $(LSRC:%.C=$(VDIR)%.o)
-
-DCFLAGS = -g
-LDFLAGS += -L$(PBHOME)/lib
-CPPFLAGS += -I$(PBHOME)/include
-
-$(IDL_SRC): cubit.idl
- $(PBHOME)/bin/idlc cubit.idl
- -/bin/mv cubit.C cubit.cpp
- -/bin/mv cubit_s.C cubit_s.cpp
-
-svr: $(addprefix $(VDIR),$(CUBIT_SVR_OBJS))
- $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK)
-
-clnt: $(addprefix $(VDIR),$(CUBIT_CLT_OBJS))
- $(LINK.cc) $(LDFLAGS) -o $@ $^ $(VLDLIBS) $(POSTLINK)
-
-########
-# Sanity check builds by running basic functionality tests.
-#
-# "sleep 5" in the server startup is usually enough to get the
-# objref into the file so the client can read it.
-#
-check: $(TESTS)
- @echo "testing with 'cube' calls, stub + DII, IOR strings"
- @./svr -i30 -o non-internet > obj.1 & sleep 5
- @./clnt -n250 -O `cat obj.1` -x
- @echo ''
- @echo "testing request forwarding with 'cube' calls, stub + DII"
- @./svr -f -i30 > obj.2 & sleep 5
- @./clnt -n250 -O `cat obj.2` -x
- @echo ''
- @echo "testing transmission of primitive data types"
- @./test1_svr -i30 > obj.3 & sleep 5
- @./test1_clnt -n50 -O `cat obj.3` -x
- @echo ''
-# @echo "testing echo of primitive data values"
-# @./echo_svr -i30 > obj.4 & sleep 5
-# @./echo_clnt -O `cat obj.4` -x
-# @echo ''
- @echo "testing with 'cube' calls, MT-ized (no forwarding)"
- @./svr -t -i30 -o non-internet > obj.5 & sleep 5
- @./clnt -n250 -O `cat obj.5` -x
- @echo ''
-
-clean:
- -/bin/rm -rf *.o cubit.cpp cubit.h cubit_s.cpp cubit_s.h $(CUBIT_SVR_OBJS) $(CUBIT_CLT_OBJS) $(BIN) core
-
-realclean: clean
-
diff --git a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/README b/TAO/tests/Cubit/CORBAplus/IDL_Cubit/README
deleted file mode 100644
index 7e3219a7d4c..00000000000
--- a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/README
+++ /dev/null
@@ -1,54 +0,0 @@
-This is the cubit example that uses the CORBAplus IDL compiler to generate
-the stubs and skeletons. Additional features include presence of a
-factory to create Cubit objects.
-
-You can either run the server in the background in the same window as
-the client or open a separate window for the client and server.
-
-server:
--------
-
-% svr [-d] [-n <number-of-cubit-objects>] [-pbtrace]
-
-The server cubit factory maintained num_of_cubit objects (default =
-1). They are assigned keys that look like "key0", "key1", ...
-
-When the server is started and you have used the -d flag, you should
-see a line of output that looks something like:
-XpsIiopServerProfileFactory::XpsIiopServerProfileFactory() : new tcp server listening at port 45372
-
-Using -d turns on debugging messages. It is additive, i.e., the more
--d options provided, the more debugging you can get. At the moment,
-only 2 levels of debugging are implemented, and more than 2 -d options
-are ignored.
-
-NOTE:
-
-0. $PBHOME is the directory where CORBAplus is installed.
-
-1. Set the appropriate environment variables for CORBAplus to work. Look at the example script at
-$PBHOME/.cshrc_pb You can append this script to your .cshrc.mine file assuming you run a csh shell.
-You can also execute it, like:
-
- source $PBHOME/.cshrc_pb
-
-2. Make sure the CORBAplus BOA server is running, before trying to run the server example.
-
- To run the BOA server execute:
-
- $PBHOME/bin/pbboad -pbtrace
-
-client:
--------
-
-% clnt [-d] [-k <cubit key>] [-n <iterations>] -pbinit Cubit_Factory iiop://<host>:<port>/cubit_factory
-
- where
- <host> is the machine where the server is running.
- <port> is the port number that was displayed when the server was run. See example output above.
-
-<cubit_key> corresponds to "key0", "key1", ...
-
-<iterations> are the number of times you want to execute a call.
-
--d : see same option for server above. \ No newline at end of file
diff --git a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/clnt.cpp b/TAO/tests/Cubit/CORBAplus/IDL_Cubit/clnt.cpp
deleted file mode 100644
index 3a18184fea3..00000000000
--- a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/clnt.cpp
+++ /dev/null
@@ -1,725 +0,0 @@
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// TAO/tests/Cubit/CORBAplus/IDL_Cubit
-//
-// = FILENAME
-// clnt.cpp
-//
-// = DESCRIPTION
-// This class implements a simple "cube" CORBA client for the Cubit
-// example using stubs generated by the CORBAplus ORB IDL compiler.
-//
-// = AUTHORS
-// Andy Gokhale, Sumedh Mungee, and Sergio Flores-Gaitan
-//
-// ============================================================================
-
-#include "pbroker/pberr.h"
-//#include <pbroker/corba/ifr/ifrc.h>
-#include "ace/Profile_Timer.h"
-#include "clnt.h"
-
-int _debug_level = 1;
-
-// Constructor.
-
-Cubit_Client::Cubit_Client (void)
- : cubit_factory_key_ ("cubit_factory"),
- cubit_key_ ("key0"),
- hostname_ (ACE_DEFAULT_SERVER_HOST),
- portnum_ (ACE_DEFAULT_SERVER_PORT),
- loop_count_ (250),
- exit_later_ (0),
- factory_ (Cubit_Factory::_nil ()),
- objref_ (CORBA::Object::_nil ()),
- cubit_ (Cubit::_nil ()),
- orb_ptr_ (0),
- call_count_ (0),
- error_count_ (0)
-{
-}
-
-// Simple function that returns the substraction of 117 from the
-// parameter.
-
-int
-Cubit_Client::func (u_int i)
-{
- return i - 117;
-}
-
-// Parses the command line arguments and returns an error status.
-
-int
-Cubit_Client::parse_args (void)
-{
- ACE_Get_Opt get_opts (argc_, argv_, "dn:k:xp:");
- int c;
-
- while ((c = get_opts ()) != -1)
- switch (c)
- {
- case 'd': // debug flag
- _debug_level++;
- break;
- case 'n': // loop count
- loop_count_ = (u_int) ACE_OS::atoi (get_opts.optarg);
- break;
- case 'h':
- hostname_ = ACE_OS::strdup (get_opts.optarg);
- break;
- case 'p':
- portnum_ = ACE_OS::atoi (get_opts.optarg);
- break;
- case 'k': // stringified objref
- cubit_key_ = ACE_OS::strdup (get_opts.optarg);
- break;
- case 'x':
- this->exit_later_++;
- break;
- case '?':
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "usage: %s"
- " [-d]"
- " [-n loopcount]"
- " [-k cubit-obj-ref-key]"
- " [-x]"
- " [-pbtrace]"
- " -pbinit Cubit_Factory <Object_Reference>"
- "\n",
- this->argv_ [0]),
- -1);
- }
-
- // Indicates successful parsing of command line.
- return 0;
-}
-
-// Exercise the union. Cube a union.
-
-void
-Cubit_Client::cube_union_stub (void)
-{
- CORBA::Environment env;
- Cubit::oneof u, r;
-
- this->call_count_++;
-
- u.l (3); // use the long union branch
-
- // Cube a "union" ...
- // @@ Put exception handling here !!!
- r = this->cubit_->cube_union (u);
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("from cube_union");
- this->error_count_++;
- }
- else
- {
- dmsg1 ((LM_DEBUG, "cube union ...\n"));
- u.l (u.l () * u.l () * u.l ()) ;
-
- if (u.l () != r.l ())
- {
- ACE_DEBUG ((LM_DEBUG, "** cube_union ERROR\n"));
- this->error_count_++;
- }
-
- }
-
- this->call_count_++;
-
- u._d (Cubit::e_3rd);
-#if 0
- u.cm ().l = this->func (i);
- u.cm ().s = this->func (i);
- u.cm ().o = this->func (i);
-#endif
-
- u.cm ().l = 7;
- u.cm ().s = 5;
- u.cm ().o = 3;
-
- // Cube another "union" which uses the default arm ... NOT tested yet
- r = this->cubit_->cube_union (u);
-//, this->env_); @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("from cube_union");
- this->error_count_++;
- }
- else
- {
- dmsg1 ((LM_DEBUG, "cube union ...\n"));
- u.cm ().l = u.cm ().l * u.cm ().l * u.cm ().l;
- u.cm ().s = u.cm ().s * u.cm ().s * u.cm ().s;
- u.cm ().o = u.cm ().o * u.cm ().o * u.cm ().o;
-
- if (u.cm ().l != r.cm ().l
- || u.cm ().s != r.cm ().s
- || u.cm ().o != r.cm ().o)
- {
- ACE_DEBUG ((LM_DEBUG, "** cube_union ERROR\n"));
- this->error_count_++;
- }
- }
-}
-
-// Exercise the union using dii.
-
-void
-Cubit_Client::cube_union_dii (void)
-{
- // Create the request ...
- CORBA::Request_ptr req;
-
- this->call_count_++;
-
- req = this->cubit_->_request ((CORBA::String) "cube_union");
- //, this->env_); @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- this->error_count_++;
-
- // this->env_.print_exception ("cube_union_dii request create");
- return;
- }
-
- // ... initialise the argument list and result ...
- Cubit::oneof *u, r;
-
- u = new Cubit::oneof;
- u->_d (Cubit::e_3rd);
-
- u->cm ().l = 5;
- u->cm ().s = -7;
- u->cm ().o = 3;
-
- CORBA::Any tmp_arg (Cubit::_tc_oneof, u, CORBA_FALSE);
-
- req->arguments ()->add_value ("values", tmp_arg, CORBA::ARG_IN);
- //, this->env_); @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- this->error_count_++;
- // this->env_.print_exception ("cube_union_dii request arg add");
- CORBA::release (req);
- return;
- }
-
- req->result ()->value ()->replace (Cubit::_tc_oneof, 0, CORBA_TRUE);
- //, this->env_); @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- this->error_count_++;
- // this->env_.print_exception ("cube_union_dii result type");
- CORBA::release (req);
- return;
- }
-
- // Make the invocation, verify the result.
-
- req->invoke ();
-
- if (req->env ()->exception () != 0)
- {
- this->error_count_++;
- // req->env ()->print_exception ("cube_union_dii invoke");
- CORBA::release (req);
- return;
- }
-
- r = *(Cubit::oneof *) req->result ()->value ()->value ();
-
- if (r.cm ().o != 27 || r.cm ().l != 125 || r.cm ().s != -343)
- {
- this->error_count_++;
- ACE_ERROR ((LM_ERROR, "cube_union_dii -- bad results\n"));
- }
- else
- dmsg1 ((LM_DEBUG, "cube_union_dii ... success!!\n"));
-
- CORBA::release (req);
- delete u;
-}
-
-// Cube a short.
-
-void
-Cubit_Client::cube_short (int i)
-{
- CORBA::Short arg_short = this->func (i);
- // Cube a short.
- CORBA::Short ret_short = cubit_->cube_short (arg_short);
- //, this->env_); @@ put exception handling here !!
-
- this->call_count_++;
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("from cube_short");
- this->error_count_++;
- }
- else
- {
- dmsg2 ((LM_DEBUG, "cube short: %d --> %d\n",
- arg_short,
- ret_short));
-
- arg_short = arg_short * arg_short * arg_short;
-
- if (arg_short != ret_short)
- {
- ACE_ERROR ((LM_ERROR, "** cube_short (%d) ERROR (--> %d)\n",
- (CORBA::Short) this->func (i),
- ret_short));
- this->error_count_++;
- }
- }
-}
-
-// Cube an octet
-
-void
-Cubit_Client::cube_octet (int i)
-{
- CORBA::Octet arg_octet = this->func (i);
-
- // Cube an octet.
- CORBA::Octet ret_octet = this->cubit_->cube_octet (arg_octet);
- //, this->env_); @@ put exception handling here !!
-
- this->call_count_++;
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("from cube_octet");
- this->error_count_++;
- }
- else
- {
- dmsg2 ((LM_DEBUG, "cube octet: %d --> %d\n",
- arg_octet,
- ret_octet));
- arg_octet = arg_octet * arg_octet * arg_octet;
- if (arg_octet != ret_octet) {
- ACE_DEBUG ((LM_DEBUG,
- "** cube_octet (%d) ERROR (--> %d)\n",
- (CORBA::Octet) this->func (i),
- ret_octet));
- this->error_count_++;
- }
- }
-}
-
-// calculate the cube from a long
-
-void
-Cubit_Client::cube_long (int i)
-{
- CORBA::Long arg_long = this->func (i);
-
- // Cube a long.
- CORBA::Long ret_long = this->cubit_->cube_long (arg_long);
- //, this->env_);; @@ put exception handling here !!
-
- this->call_count_++;
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("from cube_long");
- this->error_count_++;
- }
- else
- {
- dmsg2 ((LM_DEBUG, "cube long: %d --> %d\n",
- arg_long,
- ret_long));
- arg_long = arg_long * arg_long * arg_long;
- if (arg_long != ret_long) {
- ACE_ERROR ((LM_ERROR,
- "** cube_long (%ld) ERROR (--> %ld)\n",
- (CORBA::Long) this->func (i),
- ret_long));
- this->error_count_++;
- }
- }
-}
-
-// Cube the numbers in a struct
-
-void
-Cubit_Client::cube_struct (int i)
-{
- Cubit::Many arg_struct;
- Cubit::Many ret_struct;
-
- this->call_count_++;
-
- arg_struct.l = this->func (i);
- arg_struct.s = this->func (i);
- arg_struct.o = this->func (i);
-
- // Cube a "struct" ...
- ret_struct = this->cubit_->cube_struct (arg_struct);
- //, this->env_); @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("from cube_struct");
- this->error_count_++;
- }
- else
- {
- dmsg1 ((LM_DEBUG, "cube struct ...\n"));
- arg_struct.l = arg_struct.l * arg_struct.l * arg_struct.l;
- arg_struct.s = arg_struct.s * arg_struct.s * arg_struct.s;
- arg_struct.o = arg_struct.o * arg_struct.o * arg_struct.o;
-
- if (arg_struct.l != ret_struct.l
- || arg_struct.s != ret_struct.s
- || arg_struct.o != ret_struct.o)
- {
- ACE_ERROR ((LM_ERROR, "** cube_struct ERROR\n"));
- this->error_count_++;
- }
- }
-}
-
-// Cube the numbers in a struct
-
-void
-Cubit_Client::cube_struct_dii (void)
-{
- // Create the request ...
- CORBA::Request_ptr req =
- this->cubit_->_request ((CORBA::String) "cube_struct");
- //, this->env_); @@ put exception handling here !!
-
- this->call_count_++;
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("DII request create");
- return;
- }
-
- // ... initialise the argument list and result ...
- Cubit::Many arg;
- Cubit::Many result;
-
- arg.o = 3;
- arg.l = 5;
- arg.s = -7;
-
- CORBA::Any tmp_arg (Cubit::_tc_Many, &arg, CORBA_FALSE);
-
- req->arguments ()->add_value ("values", tmp_arg, CORBA::ARG_IN);
- //, this->env_); @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("DII request arg add");
- CORBA::release (req);
- return;
- }
-
- req->result ()->value ()->replace (Cubit::_tc_Many, 0, CORBA_TRUE);
- //, this->env_); @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("DII request result type");
- CORBA::release (req);
- return;
- }
-
- // Make the invocation, verify the result
-
- req->invoke ();
-
- if (req->env ()->exception () != 0)
- {
- // req->env ()->print_exception ("DII invoke sending struct");
- CORBA::release (req);
- return;
- }
-
- result = *(Cubit::Many *) req->result ()->value ()->value ();
-
- if (result.o != 27 || result.l != 125 || result.s != -343)
- ACE_ERROR ((LM_ERROR, "DII cube_struct -- bad results\n"));
- else
- dmsg1 ((LM_DEBUG, "DII cube_struct ... success!!\n"));
-
- CORBA::release (req);
-}
-
-void
-Cubit_Client::print_stats (const char *call_name, ACE_Profile_Timer::ACE_Elapsed_Time &elapsed_time)
-{
- double tmp;
-
- ACE_DEBUG ((LM_DEBUG,
- "%s:\n",
- call_name));
-
- if (this->call_count_ > 0 && this->error_count_ == 0)
- {
- tmp = 1000 / elapsed_time.real_time;
-
- elapsed_time.real_time *= ACE_ONE_SECOND_IN_MSECS;
- elapsed_time.user_time *= ACE_ONE_SECOND_IN_MSECS;
- elapsed_time.system_time *= ACE_ONE_SECOND_IN_MSECS;
-
- elapsed_time.real_time /= this->call_count_;
- elapsed_time.user_time /= this->call_count_;
- elapsed_time.system_time /= this->call_count_;
-
- tmp = 1000 / elapsed_time.real_time;
-
- ACE_DEBUG ((LM_DEBUG,
- "\treal_time\t= %0.06f ms, \n\t"
- "user_time\t= %0.06f ms, \n\t"
- "system_time\t= %0.06f ms\n"
- "\t%0.00f calls/second\n",
- elapsed_time.real_time < 0.0? 0.0:elapsed_time.real_time,
- elapsed_time.user_time < 0.0? 0.0:elapsed_time.user_time,
- elapsed_time.system_time < 0.0? 0.0:elapsed_time.system_time,
- tmp < 0.0? 0.0 : tmp));
- }
- else
- {
- ACE_ERROR ((LM_ERROR, "\tNo time stats printed. Call count zero or error ocurred.\n"));
- }
-
- ACE_DEBUG ((LM_DEBUG,
- "\t%d calls, %d errors\n",
- this->call_count_,
- this->error_count_));
-}
-
-// Execute client example code.
-
-int
-Cubit_Client::run (void)
-{
- u_int i;
-
- ACE_Profile_Timer timer;
- ACE_Profile_Timer::ACE_Elapsed_Time elapsed_time;
-
- // ACE_Time_Value before;
-
- // We start an ACE_Profile_Timer here...
- timer.start ();
-
- // Make the calls in a loop.
- for (i = 0; i < this->loop_count_; i++)
- {
- this->cube_short (i);
- this->cube_octet (i);
- this->cube_long (i);
- this->cube_struct (i);
- }
-
- // stop the timer.
- timer.stop ();
-
- timer.elapsed_time (elapsed_time);
- // compute call average call time.
- this->print_stats ("cube average call", elapsed_time);
-
-
-#if 0 // cube_struct_dii() is not enabled for now in this test
-
- // Simple test for DII: call "cube_struct". (It's not timed since
- // the copious mallocation of DII would bias numbers against typical
- // stub-based calls).
-
- timer.start ();
-
- this->call_count_ = 0;
- this->error_count_ = 0;
- // Make the calls in a loop.
- for (i = 0; i < this->loop_count_; i++)
- {
- this->cube_struct_dii ();
- }
- timer.stop ();
-
- timer.elapsed_time (elapsed_time);
- // compute call average call time.
- this->print_stats ("cube_struct_dii call", elapsed_time);
-
-#endif /* DII test not enabled for now */
-
- // ------------------>
- // Two more tests, using the "cube_union" function
-
- // unions using stubs
- timer.start ();
-
- this->call_count_ = 0;
- this->error_count_ = 0;
- // Make the calls in a loop.
- for (i = 0; i < this->loop_count_; i++)
- {
- this->cube_union_stub ();
- }
-
- timer.stop ();
-
- timer.elapsed_time (elapsed_time);
- // compute call average call time.
- this->print_stats ("cube_union_stub call", elapsed_time);
-
-#if 0 // cube_union_dii() is not enabled for now in this test
- // union DII
- timer.start ();
-
- this->call_count_ = 0;
- this->error_count_ = 0;
- // Make the calls in a loop.
- for (i = 0; i < this->loop_count_; i++)
- {
- this->cube_union_dii ();
- }
-
- timer.stop ();
-
- timer.elapsed_time (elapsed_time);
- // compute call average call time.
- this->print_stats ("cube_union_dii call", elapsed_time);
-#endif /* cube_union_dii test not enabled for now */
-
- if (this->exit_later_)
- {
- this->cubit_->please_exit ();
- //this->env_); @@ put exception handling here !!
- //dexc (this->env_, "server, please ACE_OS::exit");
- }
-
- return this->error_count_ == 0 ? 0 : 1;
-}
-
-Cubit_Client::~Cubit_Client (void)
-{
- // Free resources
- CORBA::release (this->orb_ptr_);
- CORBA::release (this->objref_);
- CORBA::release (this->factory_);
- CORBA::release (this->cubit_);
-}
-
-int
-Cubit_Client::init (int argc, char **argv)
-{
- this->argc_ = argc;
- this->argv_ = argv;
-
- int check = 0;
-
- try {
- // Parse command line and verify parameters.
- if (this->parse_args () == -1)
- return -1;
-
- // Retrieve the ORB.
- this->orb_ptr_ = CORBA::ORB_init (this->argc_,
- this->argv_);
-
- // @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("ORB initialization");
- return -1;
- }
-
- // Retrieve a factory objref.
- this->objref_ = this->orb_ptr_->resolve_initial_references ("Cubit_Factory");
- // @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("Cubit_Factory::_bind");
- return -1;
- }
-
- if (CORBA::is_nil (this->objref_) == CORBA_TRUE)
- ACE_ERROR_RETURN ((LM_ERROR,
- "resolve_initial_references returned null object for Cubit_Factory\n"),
- -1);
-
- // Narrow the CORBA::Object reference to the stub object
- this->factory_ = Cubit_Factory::_narrow (this->objref_);
-
- //, this->env_); @@ put exception handling here !!
-
- CORBA::release (this->objref_);
-
- if (this->factory_ == 0)
- ACE_ERROR_RETURN ((LM_ERROR,
- " (%P|%t) Unable to narrow object reference to a Cubit_Factory_ptr.\n"),
- -1);
-
- // Now retrieve the Cubit obj ref corresponding to the key.
- this->cubit_ = this->factory_->make_cubit (this->cubit_key_);
- //, this->env_); @@ put exception handling here !!
-
- if (this->env_.exception () != 0)
- {
- // this->env_.print_exception ("string2object");
- return -1;
- }
-
- if (CORBA::is_nil (this->cubit_))
- ACE_ERROR_RETURN ((LM_ERROR,
- "null cubit objref returned by factory\n"),
- -1);
- }
- catch(const CORBA::SystemException& exc)
- {
- ACE_DEBUG ((LM_DEBUG,
- "CORBA::SystemException caught: %s (minor: %d): clnt.cpp\n\n",
- exc._repository_id (),
- exc.minor ()));
- }
- catch(const CORBA::UserException& exc)
- {
- ACE_DEBUG ((LM_DEBUG,
- "CORBA::UserException caught: %s: clnt.cpp\n\n",
- exc._repository_id ()));
- }
- catch(...)
- {
- ACE_DEBUG ((LM_DEBUG,
- "Exception caught: clnt.cpp\n\n"));
- }
-
- return 0;
-}
-
-// This function runs the test.
-
-int
-main (int argc, char **argv)
-{
- Cubit_Client cubit_client;
-
- if (cubit_client.init (argc, argv) == -1)
- return 1;
- else
- return cubit_client.run ();
-}
diff --git a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/clnt.h b/TAO/tests/Cubit/CORBAplus/IDL_Cubit/clnt.h
deleted file mode 100644
index 5713668e0e5..00000000000
--- a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/clnt.h
+++ /dev/null
@@ -1,135 +0,0 @@
-// $Id$
-// -*- C++ -*-
-// ============================================================================
-//
-// = LIBRARY
-// TAO/tests/Cubit/CORBAplus/IDL_Cubit
-//
-// = FILENAME
-// clnt.h
-//
-// = DESCRIPTION
-// This class implements a simple "cube" CORBA client for the Cubit
-// example using stubs generated by the TAO ORB IDL compiler.
-//
-// = AUTHORS
-// Andy Gokhale, Sumedh Mungee, and Sergio Flores-Gaitan
-//
-// ============================================================================
-#if !defined (_CLNT_H_)
-#define _CLNT_H_
-
-#include "ace/Get_Opt.h"
-#include "pbroker/corba/orb.h"
-#include "pbroker/corba/request.h"
-#include "pbroker/corba/environ.h"
-#include "cubit.h"
-
-class Cubit_Client
- // = TITLE
- // Defines a class that encapsulates behaviour of the Cubit client
- // example. Provides a better understanding of the logic in an
- // object oriented way.
- //
- // = DESCRIPTION
- // This class declares an interface to run the example client for
- // Cubit CORBA server. All the complexity for initializing the
- // server is hidden in the class. Just the run() interface is needed.
-{
- public:
- // = Constructor and destructor.
- Cubit_Client (void);
- ~Cubit_Client (void);
-
- int run (void);
- // Execute client example code.
-
- int init (int argc, char **argv);
- // Initialize the client communication endpoint with server.
-
-private:
- int func (u_int i);
- // simple function that returns the substraction of 117 from the parameter.
-
- int parse_args (void);
- // Parses the arguments passed on the command line.
-
- void print_stats (const char *call_name, ACE_Profile_Timer::ACE_Elapsed_Time &elapsed_time);
- // prints the time stats
-
- void cube_union_stub (void);
- // Exercise the union. Cube a union.
-
- void cube_union_dii (void);
- // Exercise the union using dii.
-
- void cube_struct (int i);
- // calculate the cube from a struct.
-
- void cube_long (int i);
- // calculate the cube from a long
-
- void cube_octet (int i);
- // Cube an octet
-
- void cube_short (int i);
- // Cube a short.
-
- void cube_struct_dii (void);
- // Cube the numbers in a struct
-
- int argc_;
- // # of arguments on the command line.
-
- char **argv_;
- // arguments from command line.
-
- const char *cubit_factory_key_;
- // Key of factory obj ref.
-
- char *cubit_key_;
- // Key of the obj ref to be retrieved via the factory.
-
- char *hostname_;
- // Hostname of server.
-
- CORBA::ULong portnum_;
- // default port number of server.
-
- u_int loop_count_;
- // Number of times to do the cube operations.
-
- int exit_later_;
- // Flag to tell server to not exit immediately
-
- Cubit_Factory_ptr factory_;
- // factory pointer for cubit.
-
- CORBA::Object_ptr objref_;
- // storage of the factory objref
-
- CORBA::Environment env_;
- // Environment variable
-
- Cubit_ptr cubit_;
- // Cubit obj ref
-
- CORBA::ORB_ptr orb_ptr_;
- // Remember our orb
-
- u_int call_count_;
- // # of calls made to functions
-
- u_int error_count_;
- // # of errors incurred in the lifetime of the application.
-};
-
-#if defined (DEBUG)
-#define dmsg1(X) { if (_debug_level > 0) ACE_DEBUG (X); }
-#define dmsg2(X) { if (_debug_level > 1) ACE_DEBUG (X); }
-#else
-#define dmsg1(X) { }
-#define dmsg2(X) { }
-#endif /* DEBUG */
-
-#endif /* _CLNT_H_ */
diff --git a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit.idl b/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit.idl
deleted file mode 100644
index 9ddc2d8954f..00000000000
--- a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit.idl
+++ /dev/null
@@ -1,71 +0,0 @@
-// $Id$
-
-interface Cubit
- // = TITLE
- // Defines an interface that encapsulates operations that cube
- // numbers.
- //
- // = DESCRIPTION
- // This interface encapsulates operations that cube
- // octets, shorts, longs, structs and unions.
-
-{
- octet cube_octet (in octet o);
- // cube an octet
-
- short cube_short (in short s);
- // cube a short
-
- long cube_long (in long l);
- // cube a long
-
- struct Many
- {
- octet o; // + 3 bytes padding (normally) ...
- long l;
- short s; // + 2 bytes padding (normally) ...
- };
-
- Many cube_struct (in Many values);
- // Cube a struct
-
- enum discrim
- {
- e_0th,
- e_1st,
- e_2nd,
- e_3rd
- };
- // Enumeration of the different elements in a union.
-
- union oneof switch (discrim)
- {
- // this is an easy union to interpret; no padding
- // is needed between discriminant and value.
- case e_0th:
- octet o;
- case e_1st:
- short s;
- case e_2nd:
- long l;
- case e_3rd:
- Many cm;
-
- // default:
- // Many cm;
- };
- // Union of different types.
-
- oneof cube_union (in oneof values);
- // cube a union.
-
- oneway void please_exit ();
- // shutdown the application.
-};
-
-interface Cubit_Factory
- // = TITLE
- // Creates Cubit objects
-{
- Cubit make_cubit (in string key);
-};
diff --git a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.cpp b/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.cpp
deleted file mode 100644
index 4ad44df668b..00000000000
--- a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.cpp
+++ /dev/null
@@ -1,174 +0,0 @@
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// TAO/tests/Cubit/CORBAplus/IDL_Cubit
-//
-// = FILENAME
-// cubit_i.cpp
-//
-// = AUTHOR
-// Sergio Flores-Gaitan
-//
-// ============================================================================
-
-#include "pbroker/corba/orb.h"
-#include "pbroker/corba/environ.h"
-#include <pbroker/corba/xpsboa.h>
-#include <pbroker/corba/lifecycl/impldecl.h>
-#include "cubit_i.h"
-
-// Declare the Implementation
-XPS_DECLARE_IMPLEMENTATION_ID(Cubit_Factory_iId,"Cubit_Factory_iId")
-XPS_DECLARE_IMPLEMENTATION(Cubit_Factory_decl,Cubit_Factory_iId,Cubit_Factory)
-
-// Declare the associated activator,
-XPS_DECLARE_DEFAULT_ACTIVATOR(Cubit_Factory_decl,Cubit_FactoryDefActivator,Cubit_Factory,Cubit_Factory_i)
-
-XPS_CAST1_IMPL(Cubit_Factory_i,Cubit_Factory_base_impl)
-
-// Constructor
-
-Cubit_Factory_i::Cubit_Factory_i (const char *key, int numobjs)
- :numobjs_ (numobjs)
-{
- // Create implementation object with user specified key.
- this->my_cubit_ = new Cubit_i_ptr [this->numobjs_];
-
- static char obj_str [MAXNAMELEN];
-
- for (u_int i = 0; i < this->numobjs_; i++)
- {
- ACE_OS::memset (obj_str, '\0', MAXNAMELEN);
- ACE_OS::sprintf (obj_str, "key%d", i);
-
- my_cubit_[i] = new Cubit_i (obj_str);
-
- if (my_cubit_[i] == 0)
- ACE_ERROR ((LM_ERROR,
- " (%P|%t) Unable to create implementation object%d\n",
- i));
- }
-}
-
-// Destructor
-
-Cubit_Factory_i::~Cubit_Factory_i (void)
-{
- ACE_DEBUG ((LM_DEBUG, "~~~ in destructor ~Cubit_Factory_i()\n"));
- delete [] this->my_cubit_;
-}
-
-Cubit_ptr
-Cubit_Factory_i::make_cubit (const char *key)
-{
- CORBA_Environment env;
-
- for (size_t i = 0; i < this->numobjs_; i++)
- {
- const char *obj_str = this->my_cubit_[i]->_get_name ();
-
- // Keys matched.
- if (!ACE_OS::strcmp (obj_str, key))
- return Cubit::_duplicate (this->my_cubit_ [i]);
- }
-
- return Cubit::_nil ();
-}
-
-// Constructor
-
-Cubit_i::Cubit_i (const char *obj_name)
- : key_(obj_name)
-{
-}
-
-const char *
-Cubit_i::_get_name (void)
-{
- return key_;
-}
-
-// Destructor
-
-Cubit_i::~Cubit_i (void)
-{
-}
-
-// Cube an octet
-
-CORBA::Octet
-Cubit_i::cube_octet (CORBA::Octet o)
-{
- return o * o * o;
-}
-
-// Cube a short.
-
-CORBA::Short
-Cubit_i::cube_short (CORBA::Short s)
-{
- return s * s * s;
-}
-
-// Cube a long
-
-CORBA::Long
-Cubit_i::cube_long (CORBA::Long l)
-{
- return l * l * l;
-}
-
-// Cube a struct
-
-Cubit::Many
-Cubit_i::cube_struct (const Cubit::Many &values)
-{
- Cubit::Many temp;
-
- temp.o = values.o * values.o * values.o;
- temp.s = values.s * values.s * values.s;
- temp.l = values.l * values.l * values.l;
-
- return temp;
-}
-
-// Cube a union
-
-Cubit::oneof
-Cubit_i::cube_union (const Cubit::oneof &values)
-{
- Cubit::oneof temp;
-
- switch (values._d ())
- {
- case e_0th:
- temp.o (values.o () * values.o () * values.o ());
- break;
- case e_1st:
- temp.s (values.s () * values.s () * values.s ());
- break;
- case e_2nd:
- temp.l (values.l () * values.l () * values.l ());
- break;
- case e_3rd:
- default:
- temp._d (values._d ()); // set the discriminant
- // use the read/write accessor
- temp.cm ().o = values.cm ().o * values.cm ().o * values.cm ().o;
- temp.cm ().s = values.cm ().s * values.cm ().s * values.cm ().s;
- temp.cm ().l = values.cm ().l * values.cm ().l * values.cm ().l;
-
- }
- return temp;
-}
-
-// Shutdown.
-
-void Cubit_i::please_exit (void)
-{
- ACE_DEBUG ((LM_DEBUG, "I've been asked to shut down...\n"));
- // TAO_ORB_Core_instance ()->orb ()->shutdown ();
- //dexc (env, "please_exit, shutdown");
-}
diff --git a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.h b/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.h
deleted file mode 100644
index b97c92c2e7d..00000000000
--- a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/cubit_i.h
+++ /dev/null
@@ -1,107 +0,0 @@
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// TAO/tests/Cubit/CORBAplus/IDL_Cubit
-//
-// = FILENAME
-// cubit_i.h
-//
-// = AUTHOR
-// Andy Gokhale, Sumedh Mungee and Sergio Flores-Gaitan
-//
-// ============================================================================
-
-#if !defined (_CUBIT_I_HH)
-#define _CUBIT_I_HH
-
-#include <pbroker/corba/lifecycl/actvtr.h>
-#include <pbroker/corba/lifecycl/impldecl.h>
-
-#include "ace/OS.h"
-#include "cubit_s.h"
-
-// Forward declarations
-class Cubit_i;
-
-// Typedefs.
-typedef Cubit_i *Cubit_i_ptr;
-typedef Cubit_i_ptr Cubit_i_ref;
-
-class Cubit_i : public Cubit_base_impl
- // = TITLE
- // Illustrates how to integrate a servant with the
- // generated skeleton.
- // = DESCRIPTION
- // Implementation of the cubit example at the servant side.
- // Cubes an octet, short, long, struct and union.
-{
-public:
- Cubit_i (const char *obj_name = 0);
- // Constructor
-
- ~Cubit_i (void);
- // Destructor
-
- virtual CORBA::Octet cube_octet (CORBA::Octet o);
- // Cube an octet
-
- virtual CORBA::Short cube_short (CORBA::Short s);
- // Cube a short
-
- virtual CORBA::Long cube_long (CORBA::Long l);
- // Cube a long
-
- virtual Cubit::Many cube_struct (const Cubit::Many &values);
- // Cube a struct.
-
- virtual Cubit::oneof cube_union (const Cubit::oneof &values);
- // Cube a union.
-
- virtual void please_exit (void);
- // Shutdown routine.
-
- const char *_get_name (void);
- // get the key of the object.
- private:
- const char *key_;
-};
-
-
-class Cubit_Factory_i;
-
-typedef Cubit_Factory_i *Cubit_Factory_i_ptr;
-
-class Cubit_Factory_i: public Cubit_Factory_base_impl
- // =TITLE
- // Cubit_Factory_i
- //
- // DESCRIPTION
- // factory object returning the cubit objrefs
-{
-public:
- XPS_CAST1_DECL(Cubit_Factory_i,Cubit_Factory_base_impl)
- XPS_DEFINE_IMPLEMENTATION(Cubit_Factory_decl)
-
- Cubit_Factory_i (void)
- {Cubit_Factory_i ("keyone", 1);}
-
- Cubit_Factory_i (const CORBA_ReferenceData & refData)
- {Cubit_Factory_i ("keyone", 1);}
-
- Cubit_Factory_i (const char *key, int numobjs);
- // constructor
-
- ~Cubit_Factory_i (void);
- // destructor
-
- virtual Cubit_ptr make_cubit (const char *key);
- // make the cubit object whose key is "key"
-
-private:
- Cubit_i_ptr *my_cubit_;
- u_int numobjs_;
-};
-
-#endif /* _CUBIT_I_HH */
diff --git a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/svr.cpp b/TAO/tests/Cubit/CORBAplus/IDL_Cubit/svr.cpp
deleted file mode 100644
index 28d0d5da22f..00000000000
--- a/TAO/tests/Cubit/CORBAplus/IDL_Cubit/svr.cpp
+++ /dev/null
@@ -1,141 +0,0 @@
-// $Id$
-
-// ============================================================================
-//
-// = LIBRARY
-// TAO/tests/Cubit/CORBAplus/IDL_Cubit
-//
-// = FILENAME
-// svr.cpp
-//
-// = AUTHOR
-// Andy Gokhale, Sumedh Mungee and Sergio Flores-Gaitan
-//
-// ============================================================================
-
-#include "ace/Get_Opt.h"
-#include "ace/Log_Msg.h"
-#include "pbroker/corba/orb.h"
-#include "pbroker/corba/environ.h"
-#include "pbroker/pberr.h"
-#include <pbroker/corba/xpsorb.h>
-#include <pbroker/corba/xpsboa.h>
-#include "pbroker/corba/boad/boafull.h" // will force usage of "Full" BOA API
-
-#include <pbroker/unixsvc/unixsvc.h>
-
-#include "cubit_i.h"
-
-// Global Variables
-static int num_of_objs = 1;
-static pbbool killSelf = pbfalse;
-
-// Declare the server activation policy
-XPS_DECLARE_SERVER(Cubit_Factory,"Cubit_Factory",SHARED_SERVER)
-
-// Parses the command line arguments and returns an error status
-
-static int
-parse_args (int argc, char *argv[])
-{
- ACE_Get_Opt get_opts (argc, argv, "dn:");
- int c;
-
- while ((c = get_opts ()) != -1)
- switch (c)
- {
- case 'd': // debug flag
- break;
- case 'n': // number of cubit objects we hold
- num_of_objs = ACE_OS::atoi (get_opts.optarg);
- break;
- case '?':
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "usage: %s"
- " [-d]"
- " [-n] <num of cubit objects>"
- "\n", argv [0]), 1);
- }
-
- return 0; // Indicates successful parsing of command line
-}
-
-// Standard command line parsing utilities used.
-
-int
-main (int argc, char *argv[])
-{
- CORBA_Environment env;
- // char *orb_name = "internet";
-
- XpsORB_ptr orb_ptr = XpsORB::_nil();
- XpsBOA * oa_ptr = XpsBOA::_nil ();
- CORBA_Object_ptr obj_ptr = CORBA_Object::_nil();
-
- try
- {
- // Initialize the ORB pointer
- orb_ptr = XpsORB::init (argc, argv);
-
- // Initialize the Object Adapter
- oa_ptr = XpsBOA::init (argc, argv);
-
- if (CORBA::is_nil(orb_ptr) || CORBA::is_nil(oa_ptr))
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- " (%P|%t) Unable to initialize the ORB and/or the BOA\n"),
- 1);
- }
-
-
- // Parse remaining command line and verify parameters.
- // parse_args (argc, argv);
-
- // create a factory implementation
- Cubit_Factory_ptr factory;
-
- ACE_NEW_RETURN (factory, Cubit_Factory_i ("factory", num_of_objs), 1);
-
- // Stringify the objref we'll be implementing, and print it to
- // stdout. Someone will take that string and give it to a
- // client. Then release the object.
-
- CORBA::String str = 0;
-
- str = orb_ptr->object_to_url (factory);
-
- ACE_DEBUG ((LM_DEBUG, "listening as object '%s'\n", str));
- CORBA_string_free (str);
-
- oa_ptr->obj_is_ready (factory, nil);
- oa_ptr->registerAlias (factory, "cubit_factory");
-
- XpsEventService eventService;
- eventService.mainloop(); // control will not return to this point
- }
- catch(const CORBA::SystemException& exc)
- {
- ACE_DEBUG ((LM_DEBUG,
- "CORBA::SystemException caught: %s (minor: %d): svr.cpp\n\n",
- exc._repository_id (),
- exc.minor ()));
- }
- catch(const CORBA::UserException& exc)
- {
- ACE_DEBUG ((LM_DEBUG,
- "CORBA::UserException caught: %s: svr.cpp\n\n",
- exc._repository_id ()));
- }
- catch(...)
- {
- ACE_DEBUG ((LM_DEBUG,
- "Exception caught: svr.cpp\n\n"));
- }
-
- // Free resources
- CORBA::release (oa_ptr);
- CORBA::release (orb_ptr);
-
- return 0;
-}
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/Makefile b/TAO/tests/Cubit/CORBAplus/MT_Cubit/Makefile
deleted file mode 100644
index 2d391b27ad6..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-#----------------------------------------------------------------------------
-# @(#)Makefile 1.1 10/18/96
-#
-# Makefile for the TAO MT-Cubit tests
-#----------------------------------------------------------------------------
-
-#----------------------------------------------------------------------------
-# Local macros
-#----------------------------------------------------------------------------
-
-DIRS = client \
- server
-
-#----------------------------------------------------------------------------
-# Include macros and targets
-#----------------------------------------------------------------------------
-
-include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU
-include $(ACE_ROOT)/include/makeinclude/macros.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.common.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.nested.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.nolocal.GNU
-
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/README b/TAO/tests/Cubit/CORBAplus/MT_Cubit/README
deleted file mode 100644
index a27939bd690..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/README
+++ /dev/null
@@ -1,58 +0,0 @@
-The MT-Cubit example
---------------------
-
-Compiling
----------
-
-Makefiles are provided. Use make to compile.
-
-You can either run the server in the background in the same window as
-the client or open a separate window for the client and server.
-
-server:
--------
-
-./svr -pbtrace
-
-port_num is the port number at which the server will start the high
-priority servant. The low priority servant will be created at
-(port_num+1).
-
-The server will print the IOR of the high and low priority servants,
-but it is not required by the client.
-
-client:
--------
-
-./client -d <datatype> -n <num_calls> -t <num_threads> -pbtrace -pbinit Cubit iiop://<remoteHost>:<port>/Cubit00
-
-<datatype> is one of the following:
-
-0 Octet
-1 Short
-2 Long
-3 Struct of the above 3 types
-
-<port_num> is the port number of the high priority servant. The low
-priority servant is assumed to be at (port_num+1).
-
-<server_hostname> is the hostname of the server.
-
-Based on the server_hostname and the port_num, the client constructs
-the IOR's for the high priority servant and the low priority servant.
-
-<num_calls> is the number of CORBA twoway calls to be made
-
-<num_threads> is the total number of concurrent clients to be
-created. One of these clients will be a high priority client (and thus
-send requests to the high priority servant), and the rest will have
-low priority.
-
-The high priority client makes requests at 20Hz, and the low priority
-clients make requests at 10Hz.
-
-Results
--------
-
-The client prints the latency observed by the high priority client,
-and the average latency observed by the low priority client.
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Makefile b/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Makefile
deleted file mode 100644
index d29054dd986..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Makefile
+++ /dev/null
@@ -1,148 +0,0 @@
-#----------------------------------------------------------------------------
-# $Id$
-#
-# Top-level Makefile for the ACE-ified Sun Ref. implementation
-# of IIOP ORB
-#----------------------------------------------------------------------------
-
-#----------------------------------------------------------------------------
-# Local macros
-#----------------------------------------------------------------------------
-
-LDLIBS = -lmtcorba -lmtunixsvc -lmtpbroker -lmtboadc -lmtnaming -lmtlifecycl -lmtfsstream
-
-IDL_SRC = cubit.cpp
-PROG_SRCS = $(IDL_SRC) Task_Client.cpp client.cpp
-
-LSRC = $(PROG_SRCS)
-
-CUBIT_CLIENT_OBJS = cubit.o Task_Client.o client.o
-
-BIN = client
-BUILD = $(BIN)
-VLDLIBS = $(LDLIBS:%=%$(VAR))
-VBIN = $(BIN:%=%$(VAR))
-
-WRAPPER_ROOT = $(ACE_ROOT)/
-
-#----------------------------------------------------------------------------
-# Include macros and targets
-#----------------------------------------------------------------------------
-
-#enable C++ exceptions
-exceptions = 1
-
-include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU
-include $(ACE_ROOT)/include/makeinclude/macros.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.common.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU
-#include $(ACE_ROOT)/include/makeinclude/rules.bin.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.local.GNU
-
-##DCFLAGS = -g
-LDFLAGS += -L$(PBHOME)/lib
-CPPFLAGS += -I$(PBHOME)/include
-
-$(IDL_SRC): cubit.idl
- $(PBHOME)/bin/idlc cubit.idl
- -/bin/mv cubit.C cubit.cpp
-
-client: $(addprefix $(VDIR),$(CUBIT_CLIENT_OBJS))
- $(LINK.cc) $(LDFLAGS) -o $@ $^ $(PBHOME)/lib/mtiiop_s.o $(VLDLIBS) $(POSTLINK)
-
-clean:
- -/bin/rm -rf *.o Log $(BIN) obj.* core Templates.DB .make.state
-
-realclean: clean
- -/bin/rm -rf cubit.cpp cubit.h cubit_s.*
-
-
-# DO NOT DELETE THIS LINE -- g++dep uses it.
-# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
-
-.obj/cubit.o .shobj/cubit.: cubit.cpp
-.obj/Task_Client.o .shobj/Task_Client.: Task_Client.cpp Task_Client.h \
- $(ACE_ROOT)/ace/Synch.h \
- $(ACE_ROOT)/ace/ACE.h \
- $(ACE_ROOT)/ace/OS.h \
- $(ACE_ROOT)/ace/config.h \
- $(ACE_ROOT)/ace/streams.h \
- $(ACE_ROOT)/ace/Basic_Types.h \
- $(ACE_ROOT)/ace/Basic_Types.i \
- $(ACE_ROOT)/ace/OS.i \
- $(ACE_ROOT)/ace/Trace.h \
- $(ACE_ROOT)/ace/Log_Msg.h \
- $(ACE_ROOT)/ace/Log_Record.h \
- $(ACE_ROOT)/ace/Log_Priority.h \
- $(ACE_ROOT)/ace/Log_Record.i \
- $(ACE_ROOT)/ace/Version.h \
- $(ACE_ROOT)/ace/ACE.i \
- $(ACE_ROOT)/ace/SV_Semaphore_Complex.h \
- $(ACE_ROOT)/ace/SV_Semaphore_Simple.h \
- $(ACE_ROOT)/ace/SV_Semaphore_Simple.i \
- $(ACE_ROOT)/ace/SV_Semaphore_Complex.i \
- $(ACE_ROOT)/ace/Synch.i \
- $(ACE_ROOT)/ace/Synch_T.h \
- $(ACE_ROOT)/ace/Event_Handler.h \
- $(ACE_ROOT)/ace/Event_Handler.i \
- $(ACE_ROOT)/ace/Synch_T.i \
- $(ACE_ROOT)/ace/Thread.h \
- $(ACE_ROOT)/ace/Thread.i \
- $(ACE_ROOT)/ace/Atomic_Op.i \
- $(ACE_ROOT)/ace/Task.h \
- $(ACE_ROOT)/ace/Service_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.h \
- $(ACE_ROOT)/ace/Shared_Object.i \
- $(ACE_ROOT)/ace/Service_Object.i \
- $(ACE_ROOT)/ace/Thread_Manager.h \
- $(ACE_ROOT)/ace/Containers.h \
- $(ACE_ROOT)/ace/Containers.i \
- $(ACE_ROOT)/ace/Thread_Manager.i \
- $(ACE_ROOT)/ace/Task.i \
- $(ACE_ROOT)/ace/Task_T.h \
- $(ACE_ROOT)/ace/Message_Queue.h \
- $(ACE_ROOT)/ace/Message_Block.h \
- $(ACE_ROOT)/ace/Malloc.h \
- $(ACE_ROOT)/ace/Malloc.i \
- $(ACE_ROOT)/ace/Malloc_T.h \
- $(ACE_ROOT)/ace/Free_List.h \
- $(ACE_ROOT)/ace/Free_List.i \
- $(ACE_ROOT)/ace/Malloc_T.i \
- $(ACE_ROOT)/ace/Memory_Pool.h \
- $(ACE_ROOT)/ace/Signal.h \
- $(ACE_ROOT)/ace/Signal.i \
- $(ACE_ROOT)/ace/Object_Manager.h \
- $(ACE_ROOT)/ace/Object_Manager.i \
- $(ACE_ROOT)/ace/Managed_Object.h \
- $(ACE_ROOT)/ace/Managed_Object.i \
- $(ACE_ROOT)/ace/Mem_Map.h \
- $(ACE_ROOT)/ace/Mem_Map.i \
- $(ACE_ROOT)/ace/Memory_Pool.i \
- $(ACE_ROOT)/ace/Message_Block.i \
- $(ACE_ROOT)/ace/IO_Cntl_Msg.h \
- $(ACE_ROOT)/ace/Strategies.h \
- $(ACE_ROOT)/ace/Strategies_T.h \
- $(ACE_ROOT)/ace/Service_Config.h \
- $(ACE_ROOT)/ace/Service_Config.i \
- $(ACE_ROOT)/ace/Reactor.h \
- $(ACE_ROOT)/ace/Handle_Set.h \
- $(ACE_ROOT)/ace/Handle_Set.i \
- $(ACE_ROOT)/ace/Timer_Queue.h \
- $(ACE_ROOT)/ace/Timer_Queue_T.h \
- $(ACE_ROOT)/ace/Timer_Queue_T.i \
- $(ACE_ROOT)/ace/Reactor.i \
- $(ACE_ROOT)/ace/Reactor_Impl.h \
- $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \
- $(ACE_ROOT)/ace/Synch_Options.h \
- $(ACE_ROOT)/ace/Hash_Map_Manager.h \
- $(ACE_ROOT)/ace/Message_Queue.i \
- $(ACE_ROOT)/ace/Task_T.i \
- $(ACE_ROOT)/ace/Get_Opt.h \
- $(ACE_ROOT)/ace/Get_Opt.i cubit.h \
- $(ACE_ROOT)/ace/Profile_Timer.h \
- $(ACE_ROOT)/ace/Time_Value.h \
- $(ACE_ROOT)/ace/High_Res_Timer.h \
- $(ACE_ROOT)/ace/High_Res_Timer.i \
- $(ACE_ROOT)/ace/Profile_Timer.i
-
-# IF YOU PUT ANYTHING HERE IT WILL GO AWAY
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.cpp b/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.cpp
deleted file mode 100644
index 7e288796b11..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.cpp
+++ /dev/null
@@ -1,355 +0,0 @@
-#include "pbroker/corba/xpsorb.h"
-#include "pbroker/corba/xpsboa.h"
-#include "pbroker/corba/boad/boafull.h" // will force usage of "Full" BOA API
-#include "Task_Client.h"
-
-Task_State::Task_State (int argc, char **argv)
- : start_count_ (0),
- loop_count_ (5),
- thread_count_ (5),
- base_port_ (5000),
- datatype_ (CB_OCTET),
- argc_ (argc),
- argv_ (argv)
-{
- ACE_OS::strcpy (server_host_, "localhost");
- ACE_Get_Opt opts (argc, argv, "h:n:t:p:d:");
- int c;
- int datatype;
-
- while ((c = opts ()) != -1)
- switch (c) {
- case 'd':
- datatype = ACE_OS::atoi (opts.optarg);
- switch (datatype)
- {
- case CB_OCTET:
- ACE_DEBUG ((LM_DEBUG, "Testing Octets\n"));
- datatype_ = CB_OCTET;
- break;
- case CB_LONG:
- ACE_DEBUG ((LM_DEBUG, "Testing Longs\n"));
- datatype_ = CB_LONG;
- break;
- case CB_STRUCT:
- ACE_DEBUG ((LM_DEBUG, "Testing Structs\n"));
- datatype_ = CB_STRUCT;
- break;
- case CB_SHORT:
- default:
- datatype_ = CB_SHORT;
- ACE_DEBUG ((LM_DEBUG, "Testing Shorts\n"));
- break;
- }
- continue;
- case 'h':
- ACE_OS::strcpy (server_host_, opts.optarg);
- continue;
- case 'p':
- base_port_ = ACE_OS::atoi (opts.optarg);
- continue;
- case 'n': // loop count
- loop_count_ = (unsigned) ACE_OS::atoi (opts.optarg);
- continue;
- case 't':
- thread_count_ = (unsigned) ACE_OS::atoi (opts.optarg);
- continue;
- case '?':
- default:
- ACE_OS::fprintf (stderr, "usage: %s"
- "[-d datatype Octet=0, Short=1, Long=2, Struct=3]"
- " [-n num_calls]"
- " [-h server_hostname]"
- " [-p server_port_num]"
- " [-t num_threads]"
- "\n", argv [0]
- );
- }
- barrier_ = new ACE_Barrier (thread_count_);
- latency_ = new double [thread_count_];
-}
-
-Client::Client (Task_State *ts)
- : ACE_Task<ACE_MT_SYNCH> (ACE_Thread_Manager::instance ()),
- ts_ (ts)
-{
-}
-
-void
-Client::put_latency (double latency, u_int thread_id) {
- ts_->lock_.acquire ();
- ts_->latency_[thread_id] = latency;
- ACE_DEBUG ((LM_DEBUG, "(%t) My latency was %f\n", latency));
- ts_->lock_.release ();
-}
-
-double
-Client::get_high_priority_latency () {
- return (double) ts_->latency_ [0];
-}
-
-double
-Client::get_low_priority_latency () {
- double l = 0;
- for (u_int i = 1; i < ts_->start_count_; i++)
- l += (double) ts_->latency_[i];
- return l / (double) (ts_->start_count_ - 1);
-}
-
-int
-Client::svc (void)
-{
- ACE_DEBUG ((LM_DEBUG, "(%t) Thread created\n"));
- u_int thread_id;
- Cubit_ptr cb;
- char ior [1024];
- double frequency;
- XpsORB_ptr orb_ptr = XpsORB::_nil();
- // XpsBOA * oa_ptr = XpsBOA::_nil ();
- //CORBA_Object_ptr obj_ptr = CORBA_Object::_nil();
- // CORBA::ORB_ptr orb_ptr;
- try {
- {
- ACE_GUARD_RETURN (ACE_Thread_Mutex, ace_mon, ts_->lock_, -1);
-
- thread_id = ts_->start_count_;
- ts_->start_count_++;
-
- if (thread_id == 0)
- {
- ACE_DEBUG ((LM_DEBUG, "(%t) Im the high priority client, my id is %d.\n", thread_id));
- ::sprintf (ior, "iiop:1.0//%s:%d/Cubit00", ts_->server_host_, ts_->base_port_);
- frequency = CB_HIGH_PRIORITY_RATE;
- }
- else
- {
- ACE_DEBUG ((LM_DEBUG, "(%t) Im a low priority client, my id is %d\n", thread_id));
- ::sprintf (ior, "iiop:1.0//%s:%d/Cubit00", ts_->server_host_, ts_->base_port_ + 1);
- frequency = CB_LOW_PRIORITY_RATE;
- }
-
- ACE_DEBUG ((LM_DEBUG, "Using ior = %s\n", ior));
-
- CORBA::Object_ptr objref = CORBA::Object::_nil ();
- CORBA::Environment env;
-
- orb_ptr = XpsORB::init (ts_->argc_, ts_->argv_);
- //orb_ptr = CORBA::ORB_init (ts_->argc_, ts_->argv_);
- //if (env.exception () != 0) @@ put exception handling here !!
- // ACE_ERROR_RETURN ((LM_ERROR,"%s:ORB initialization", env.exception ()), 2);
-
- // Retrieve a factory objref.
- objref = orb_ptr->resolve_initial_references ("Cubit");
-
- if (CORBA::is_nil (objref) == CORBA_TRUE)
- ACE_ERROR_RETURN ((LM_ERROR,
- "%s: must identify non-null target objref\n",
- ts_->argv_ [0]),
- 1);
-
- // Narrow the CORBA::Object reference to the stub object, checking
- // the type along the way using _is_a.
- cb = Cubit::_narrow (objref);
-
- if (cb == NULL)
- {
- ACE_ERROR_RETURN ((LM_ERROR, "Create cubit failed\n"), 1);
- }
- ACE_DEBUG ((LM_DEBUG, "(%t) Binding succeeded\n"));
- ACE_DEBUG ((LM_DEBUG, "(%t) Cb == %x\n", cb));
-
- CORBA::String str;
-
- str = orb_ptr->object_to_url (cb);
- //
- //ACE_ERROR_RETURN ((LM_ERROR, "object_to_string\n"), -1);
-
- ACE_OS::puts ((char *) str);
- ACE_OS::fflush (stdout);
- ACE_DEBUG ((LM_DEBUG, "Object Created at: '%ul'", cb));
- ACE_DEBUG ((LM_DEBUG, "connected to object '%s'", str));
- // if (cb->cube_short (2, env) == 8) // dummy call.
- // ACE_DEBUG ((LM_DEBUG, "(%t) Made successful dummy call"));
- }
-
- ACE_DEBUG ((LM_DEBUG, "(%t) Waiting for other threads to finish binding..\n"));
- ts_->barrier_->wait ();
- ACE_DEBUG ((LM_DEBUG, "(%t) Everyone's done, here I go!!\n"));
-
- this->run_tests (cb, ts_->loop_count_, thread_id, ts_->datatype_, frequency);
-
- // Free resources
- CORBA::release (orb_ptr);
- }
- catch(const CORBA::SystemException& exc)
- {
- ACE_DEBUG ((LM_DEBUG,
- "CORBA::SystemException caught: %s (minor: %d): client.cpp\n\n",
- exc._repository_id (),
- exc.minor ()));
- }
- catch(const CORBA::UserException& exc)
- {
- ACE_DEBUG ((LM_DEBUG,
- "CORBA::UserException caught: %s: client.cpp\n\n",
- exc._repository_id ()));
- }
- catch(...)
- {
- ACE_DEBUG ((LM_DEBUG,
- "Exception caught: client.cpp\n\n"));
- }
-
- return 0;
-}
-
-int
-Client::run_tests (Cubit_ptr cb,
- u_int loop_count,
- u_int thread_id,
- Cubit_Datatypes datatype,
- double frequency)
-{
- CORBA::Environment env;
- unsigned i = 0;
- unsigned call_count = 0, error_count = 0;
-
- double latency = 0;
- double sleep_time = (1/frequency) * (1000 * 1000);
- double delta = 0;
-
- //
- // Make the calls in a loop.
- //
- for (i = 0; i < loop_count; i++)
- {
- ACE_Profile_Timer timer;
- ACE_Time_Value tv (0, (long int) (sleep_time - delta));
- ACE_OS::sleep (tv);
- timer.start ();
-
- switch (datatype)
- {
- case CB_OCTET:
- {
- // Cube an octet.
- call_count++;
-
- CORBA::Octet arg_octet = func (i), ret_octet = 0;
-
- ret_octet = cb->cube_octet (arg_octet);
-
- if (env.exception () != 0)
- {
- ACE_ERROR_RETURN ((LM_ERROR,"%s:Call failed\n", env.exception ()), 2);
- }
- arg_octet = arg_octet * arg_octet * arg_octet;
- if (arg_octet != ret_octet)
- {
- ACE_OS::printf ("** cube_octet(%d) (--> %d)\n", arg_octet , ret_octet);
- error_count++;
- }
- }
- break;
-
- case CB_SHORT:
- // Cube a short.
- {
- call_count++;
-
- CORBA::Short arg_short = func (i), ret_short;
-
- ret_short = cb->cube_short (arg_short);
-
- if (env.exception () != 0)
- ACE_ERROR_RETURN ((LM_ERROR,"%s:Call failed\n", env.exception ()), 2);
-
- arg_short = arg_short * arg_short * arg_short;
- if (arg_short != ret_short) {
- ACE_OS::printf ("** cube_short(%d) (--> %d)\n", arg_short , ret_short);
- error_count++;
- }
- }
- break;
- // Cube a long.
-
- case CB_LONG:
- {
- call_count++;
-
- CORBA::Long arg_long = func (i), ret_long;
-
- ret_long = cb->cube_long (arg_long);
-
- if (env.exception () != 0)
- ACE_ERROR_RETURN ((LM_ERROR,"%s:Call failed\n", env.exception ()), 2);
-
- arg_long = arg_long * arg_long * arg_long;
- if (arg_long != ret_long)
- {
- ACE_OS::printf ("** cube_long(%d) (--> %d)\n", arg_long , ret_long);
- error_count++;
- }
- }
- break;
-
- case CB_STRUCT:
- // Cube a "struct" ...
- {
- Cubit::Many arg_struct, ret_struct;
-
- call_count++;
-
- arg_struct.l = func (i);
- arg_struct.s = func (i);
- arg_struct.o = func (i);
-
- ret_struct = cb->cube_struct (arg_struct);
-
- if (env.exception () != 0)
- ACE_ERROR_RETURN ((LM_ERROR,"%s:Call failed\n", env.exception ()), 2);
-
- arg_struct.l = arg_struct.l * arg_struct.l * arg_struct.l ;
- arg_struct.s = arg_struct.s * arg_struct.s * arg_struct.s ;
- arg_struct.o = arg_struct.o * arg_struct.o * arg_struct.o ;
-
- if (arg_struct.l != ret_struct.l
- || arg_struct.s != ret_struct.s
- || arg_struct.o != ret_struct.o )
- {
- ACE_OS::printf ("**cube_struct error!\n");
- error_count++;
- }
-
- }
- break;
- }
- timer.stop();
- ACE_Profile_Timer::ACE_Elapsed_Time et;
- timer.elapsed_time (et);
- delta = ( (0.4 * fabs (et.real_time * (1000 * 1000))) + (0.6 * delta) ); // pow(10,6)
- latency += et.real_time;
- }
-
- if (call_count > 0)
- {
- if (error_count == 0)
- {
-
- latency /= call_count;
-
- if (latency > 0) {
- ACE_OS::printf ("cube average call ACE_OS::time\t= %f msec, \t"
- "%f calls/second\n",
- latency * 1000,
- 1 / latency);
- this->put_latency (latency * 1000, thread_id);
- }
-
- }
- ACE_OS::printf ("%d calls, %d errors\n", call_count, error_count);
- }
-
- // cb->please_exit (env);
- return 0;
-}
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.h b/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.h
deleted file mode 100644
index aa14d21a682..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/Task_Client.h
+++ /dev/null
@@ -1,50 +0,0 @@
-#include "pbroker/corba/orb.h"
-#include "pbroker/corba/request.h"
-#include "pbroker/corba/environ.h"
-
-#include "ace/Synch.h"
-#include "ace/Task.h"
-#include "ace/Thread_Manager.h"
-#include "ace/Get_Opt.h"
-#include "cubit.h"
-#include "ace/Profile_Timer.h"
-#include <math.h>
-
-inline int func (unsigned i) { return i - 117; }
-
-enum Cubit_Datatypes {CB_OCTET, CB_SHORT, CB_LONG, CB_STRUCT};
-
-#define CB_HIGH_PRIORITY_RATE 20
-#define CB_LOW_PRIORITY_RATE 10
-
-class Task_State
-{
- public:
- ACE_Barrier *barrier_;
- Task_State (int argc, char **argv);
- unsigned int start_count_;
- unsigned int loop_count_;
- unsigned int thread_count_;
- unsigned int base_port_;
- char server_host_ [1024];
- double *latency_;
- Cubit_Datatypes datatype_;
- ACE_Thread_Mutex lock_;
- int argc_;
- char **argv_;
-};
-
-class Client : public ACE_Task<ACE_MT_SYNCH>
-{
-public:
- // Client (char *hostname, unsigned int n_threads, unsigned int loop_count_);
- Client (Task_State *ts);
- virtual int svc (void);
- double get_high_priority_latency ();
- double get_low_priority_latency ();
-private:
- int run_tests (Cubit_ptr, unsigned int, unsigned int, Cubit_Datatypes, double frequency);
- void put_latency (double latency, unsigned int);
- int parse_args (int, char **);
- Task_State *ts_;
-};
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp b/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp
deleted file mode 100644
index 93cb0bc8ce0..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/client.cpp
+++ /dev/null
@@ -1,59 +0,0 @@
-//**************************************************************************
-//
-// NAME : client.C
-// DESCRIPTION:
-//
-// Client for the Cubit example
-//
-//****************************************************************************
-
-#include "ace/Task.h"
-#include "ace/Thread_Manager.h"
-#include "ace/Get_Opt.h"
-#include "ace/Sched_Params.h"
-#include "cubit.h"
-#include "Task_Client.h"
-
-//
-// Mainline
-//
-int
-main (int argc, char *argv[])
-{
- Task_State ts (argc, argv);
-
- ACE::set_handle_limit ();
-
- Client low_client (&ts);
-
- // First activate the high priority client.
-
- Client high_client (&ts);
-
- ACE_Sched_Priority priority =
- ACE_Sched_Params::priority_max (ACE_SCHED_FIFO, ACE_SCOPE_THREAD);
-
- ACE_DEBUG ((LM_DEBUG, "Creating client with high priority\n"));
-
- if (high_client.activate (THR_BOUND, 1, 0, priority) == -1)
- ACE_ERROR ((LM_ERROR, "%p\n", "activate failed"));
-
- priority =
- ACE_Sched_Params::priority_min (ACE_SCHED_FIFO, ACE_SCOPE_THREAD);
-
- ACE_DEBUG ((LM_DEBUG, "Creating %d clients with low priority\n", ts.thread_count_ - 1));
-
- if (low_client.activate (THR_BOUND, ts.thread_count_ - 1, 0, priority) == -1)
- ACE_ERROR ((LM_ERROR, "%p\n", "activate failed"));
-
-
- ACE_Thread_Manager::instance ()->wait ();
-
- ACE_OS::printf ("Test done.\n"
- "High priority client latency : %f msec\n"
- "Low priority client latency : %f msec\n",
- high_client.get_high_priority_latency (),
- low_client.get_low_priority_latency ());
-
- return 0;
-}
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/cubit.idl b/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/cubit.idl
deleted file mode 100644
index 165a2de649c..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/client/cubit.idl
+++ /dev/null
@@ -1,39 +0,0 @@
- interface Cubit {
- octet cube_octet (in octet o);
- short cube_short (in short s);
- long cube_long (in long l);
-
- struct Many {
- octet o; // + 3 bytes padding (normally) ...
- long l;
- short s; // + 2 bytes padding (normally) ...
- };
-
- Many cube_struct (in Many values);
-
- /* enum discrim {e_0th, e_1st, e_2nd, e_3rd, e_4th, e_5th};
-
- union oneof
- switch (discrim) {
- // this is an easy union to interpret; no padding
- // is needed between discriminant and value.
- case e_0th:
- octet o;
- case e_1st:
- short s;
- case e_2nd:
- long l;
- case e_3rd:
- Many cm;
- };
-
- oneof cube_union (in oneof values); */
-
- oneway void please_exit ();
- };
-
-
- interface Cubit_Factory {
- Cubit create_cubit (in short priority);
- };
-
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/Makefile b/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/Makefile
deleted file mode 100644
index 276b69a1569..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/Makefile
+++ /dev/null
@@ -1,67 +0,0 @@
-#----------------------------------------------------------------------------
-# $Id$
-#
-# Top-level Makefile for the ACE-ified Sun Ref. implementation
-# of IIOP ORB
-#----------------------------------------------------------------------------
-
-#----------------------------------------------------------------------------
-# Local macros
-#----------------------------------------------------------------------------
-
-#LDLIBS = -lmtcorba -lmtunixsvc -lmtpbroker -lmtboadc -lmtnaming -lmtlifecycl -lmtfsstream
-LDLIBS = -lcorba -lunixsvc -lpbroker -lboadc -lnaming -llifecycl -lfsstream
-
-IDL_SRC = cubit.cpp cubit_s.cpp
-PROG_SRCS = svr.cpp cubit_i.cpp
-
-LSRC = $(IDL_SRC) $(PROG_SRCS)
-
-CUBIT_SVR_OBJS = cubit.o cubit_s.o svr.o cubit_i.o
-
-BIN = svr
-BUILD = $(BIN)
-VLDLIBS = $(LDLIBS:%=%$(VAR))
-VBIN = $(BIN:%=%$(VAR))
-
-#----------------------------------------------------------------------------
-# Include macros and targets
-#----------------------------------------------------------------------------
-
-#enable C++ exceptions
-exceptions = 1
-
-include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU
-include $(ACE_ROOT)/include/makeinclude/macros.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.common.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU
-#include $(ACE_ROOT)/include/makeinclude/rules.bin.GNU
-include $(ACE_ROOT)/include/makeinclude/rules.local.GNU
-
-# Local modifications to variables imported by includes above.
-DCFLAGS = -g
-LDFLAGS += -L$(PBHOME)/lib
-CPPFLAGS += -I$(PBHOME)/include
-
-#CXX := purify $(CXX)
-
-$(IDL_SRC): cubit.idl
- $(PBHOME)/bin/idlc cubit.idl
- -/bin/mv cubit.C cubit.cpp
- -/bin/mv cubit_s.C cubit_s.cpp
-
-svr: $(addprefix $(VDIR),$(CUBIT_SVR_OBJS))
- $(LINK.cc) $(LDFLAGS) -o $@ $^ $(PBHOME)/lib/iiop_s.o $(VLDLIBS) $(POSTLINK)
-
-clean:
- -/bin/rm -rf *.o Log $(BIN) obj.* core Templates.DB .make.state
-
-realclean: clean
- -/bin/rm -rf cubit.cpp cubit.h cubit_s.*
-# DO NOT DELETE THIS LINE -- g++dep uses it.
-# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY.
-
-.obj/cubit.o .shobj/cubit.: cubit.cpp
-.obj/cubit_s.o .shobj/cubit_s.: cubit_s.cpp
-
-# IF YOU PUT ANYTHING HERE IT WILL GO AWAY
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit.idl b/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit.idl
deleted file mode 100644
index 5ad02f47c28..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit.idl
+++ /dev/null
@@ -1,39 +0,0 @@
- interface Cubit {
- octet cube_octet (in octet o);
- short cube_short (in short s);
- long cube_long (in long l);
-
- struct Many {
- octet o; // + 3 bytes padding (normally) ...
- long l;
- short s; // + 2 bytes padding (normally) ...
- };
-
- Many cube_struct (in Many values);
-
- /* enum discrim {e_0th, e_1st, e_2nd, e_3rd, e_4th, e_5th};
-
- union oneof
- switch (discrim) {
- // this is an easy union to interpret; no padding
- // is needed between discriminant and value.
- case e_0th:
- octet o;
- case e_1st:
- short s;
- case e_2nd:
- long l;
- case e_3rd:
- Many cm;
- };
-
- oneof cube_union (in oneof values); */
-
- oneway void please_exit ();
- };
-
-
- interface Cubit_Factory {
- Cubit create_cubit (in short priority);
- };
-
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.cpp b/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.cpp
deleted file mode 100644
index 4b1d730a45e..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.cpp
+++ /dev/null
@@ -1,78 +0,0 @@
-// @(#)cubit_i.cpp 05/14/97
-// Copyright 1994-1995 by Sun Microsystems Inc.
-// All Rights Reserved
-//
-// TEST: hand-written Cubit Implementation
-//
-// Modified version of Cubit Example written by Sun Microsystems Inc.
-// Modified by: Brian Mendel
-
-#include "pbroker/corba/orb.h"
-#include "pbroker/corba/environ.h"
-#include "cubit_i.h"
-
-Cubit_i::Cubit_i (const char *obj_name)
-{
-}
-
-Cubit_i::~Cubit_i (void)
-{
-}
-
-CORBA::Octet
-Cubit_i::cube_octet (CORBA::Octet o)
-{
- return (CORBA::Octet) (o * o * o);
-}
-
-CORBA::Short
-Cubit_i::cube_short (CORBA::Short s)
-{
- return (CORBA::Short) (s * s * s);
-}
-
-CORBA::Long
-Cubit_i::cube_long (CORBA::Long l)
-{
- return (CORBA::Long) (l * l * l);
-}
-
-Cubit::Many
-Cubit_i::cube_struct (const Cubit::Many &values)
-{
- Cubit::Many out_values;
- out_values.o = values.o * values.o * values.o;
- out_values.s = values.s * values.s * values.s;
- out_values.l = values.l * values.l * values.l;
-
- return out_values;
-}
-
-/*Cubit_oneof *
-Cubit_i::cube_union (Cubit_oneof &values,
- CORBA::Environment &env)
-{
- ACE_UNUSED_ARG (env);
- switch (values._disc)
- {
- case e_0th:
- values.o = (CORBA::Octet) (values.o * values.o * values.o);
- break;
- case e_1st:
- values.s = (CORBA::Short) (values.s * values.s * values.s);
- break;
- case e_2nd:
- values.l = values.l * values.l * values.l;
- break;
- case e_3rd:
- default:
- values.cm.o = (CORBA::Octet) (values.cm.o * values.cm.o * values.cm.o);
- values.cm.s = (CORBA::Short) (values.cm.s * values.cm.s * values.cm.s);
- values.cm.l = values.cm.l * values.cm.l * values.cm.l;
- }
- return &values;
-} */
-
-void Cubit_i::please_exit (void)
-{
-}
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.h b/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.h
deleted file mode 100644
index 08d2563f945..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/cubit_i.h
+++ /dev/null
@@ -1,50 +0,0 @@
-// @(#)cubit_i.cpp 05/14/97
-// Copyright 1994-1995 by Sun Microsystems Inc.
-// All Rights Reserved
-//
-// TEST: hand-written Cubit Implementation
-//
-// Modified version of Cubit Example written by Sun Microsystems Inc.
-// Modified by: Brian Mendel
-
-/**************************************************************************
-This file has been hand-crafted to work with the ORB API of the SUN's IIOP
-implementation
-***************************************************************************/
-
-#ifndef _CUBIT_I_HH
-#define _CUBIT_I_HH
-
-#include "cubit_s.h"
-
-class Cubit_i;
-typedef Cubit_i *Cubit_i_ptr;
-typedef Cubit_i_ptr Cubit_i_ref;
-
-class Cubit_i : public Cubit_base_impl
-{
-public:
- Cubit_i (const char *obj_name = 0);
- ~Cubit_i (void);
-
- virtual
- CORBA::Octet cube_octet (CORBA::Octet o);
-
- virtual
- CORBA::Short cube_short (CORBA::Short s);
-
- virtual
- CORBA::Long cube_long (CORBA::Long l);
-
- virtual
- Cubit::Many cube_struct (const Cubit::Many &values);
-
- /* virtual
- Cubit::oneof *cube_union (Cubit::oneof &values,
- CORBA::Environment &env); */
-
- virtual
- void please_exit (void);
-};
-
-#endif // _CUBIT_I_HH
diff --git a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/svr.cpp b/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/svr.cpp
deleted file mode 100644
index 63000464623..00000000000
--- a/TAO/tests/Cubit/CORBAplus/MT_Cubit/server/svr.cpp
+++ /dev/null
@@ -1,284 +0,0 @@
-// @(#)svr.cpp 05/14/97
-// Copyright 1994-1995 by Sun Microsystems Inc.
-// All Rights Reserved
-//
-// TEST: simple IIOP server for "cubit.idl" interface.
-//
-// Starts up, builds an objref, prints its string in debug mode,
-// listens for messages, responds to them.
-//
-// Modified version of Cubit Example written by Sun Microsystems Inc.
-// Modified by: Brian Mendel
-
-#include "pbroker/corba/orb.h"
-#include "pbroker/corba/request.h"
-#include "pbroker/corba/environ.h"
-#include "pbroker/unixsvc/unixsvc.h"
-#include "pbroker/corba/xpsorb.h"
-#include "pbroker/corba/xpsboa.h"
-#include "pbroker/corba/boad/boafull.h" // will force usage of "Full" BOA API
-#include "ace/Get_Opt.h"
-#include "ace/Log_Msg.h"
-#include "ace/Task.h"
-#include "ace/ARGV.h"
-#include "ace/Sched_Params.h"
-
-#include "cubit_i.h"
-
-// Global Variables
-static CORBA::String key = (CORBA::String) "Cubit";
-
-
-class Cubit_Task : public ACE_Task<ACE_NULL_SYNCH>
-// = TITLE
-// Encapsulates an ORB for the Cubit application
-{
-public:
- Cubit_Task (const char* args, const char* orbname, unsigned int num_of_objs); //
-
- virtual int svc (void);
-
-protected:
- Cubit_Task () {};
-
-private:
- char* orbname_;
- char* orbargs_;
- unsigned int num_of_objs_;
-};
-
-Cubit_Task::Cubit_Task (const char* args, const char* orbname, unsigned int num_of_objs)
- : orbname_ ((char*)orbname),
- orbargs_ ((char*)args),
- num_of_objs_ (num_of_objs)
-{}
-
-
-int
-Cubit_Task::svc (void)
-{
- CORBA::Environment env;
- ACE_DEBUG ((LM_DEBUG, "(%P|%t) Beginning Cubit task with args = '%s'\n", orbargs_));
- ACE_ARGV args (orbargs_);
-
- int argc = args.argc ();
- char** argv = args.argv ();
-
- XpsORB_ptr orb_ptr = XpsORB::_nil();
- XpsBOA * oa_ptr = XpsBOA::_nil ();
- CORBA_Object_ptr obj_ptr = CORBA_Object::_nil();
-
- try {
- // Initialize the ORB pointer
- orb_ptr = XpsORB::init (argc, argv);
-
- // Initialize the Object Adapter
- oa_ptr = XpsBOA::init (argc, argv);
-
- if (CORBA::is_nil(orb_ptr) || CORBA::is_nil(oa_ptr))
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- " (%P|%t) Unable to initialize the ORB and/or the BOA\n"),
- 1);
- }
-
- // Create implementation object with user specified key.
- Cubit_i_ptr *my_cubit = new Cubit_i_ptr[num_of_objs_];
-
- u_int i;
- for (i = 0; i < num_of_objs_; i++)
- {
- CORBA::String obj_str = CORBA::string_alloc (ACE_OS::strlen ((char *) key)+30);
-
-#if 0
- ACE_OS::sprintf (obj_str, "%s-%u-%02d", (char *) key, ACE_Thread::self (), i);
-#else
- ACE_OS::sprintf (obj_str, "%s%02d", (char *) key, i);
-#endif
-
- my_cubit[i] = new Cubit_i (obj_str);
-
- if (my_cubit[i] == 0)
- ACE_ERROR_RETURN ((LM_ERROR,
- " (%P|%t) Unable to create implementation object&d\n",
- i),
- 2);
-
- //CORBA::OctetSeq obj_key;
- //obj_key.buffer = (CORBA::Octet *) obj_str;
- //obj_key.length = obj_key.maximum = ACE_OS::strlen (obj_str);
-
- //CORBA::Object_ptr obj = 0;
-
- // if (oa_ptr->find (obj_key, obj) == -1)
- // ACE_ERROR_RETURN ((LM_ERROR,
- // " (%P|%t) Unable to locate object with key '%s', %p\n",
- // key),
- // 3);
-
- // Stringify the objref we'll be implementing, and print it
- // to stdout. Someone will take that string and give it to
- // some client. Then release the object.
-
- CORBA::String str;
-
- // str = orb_ptr->object_to_string (obj);
- str = orb_ptr->object_to_url (my_cubit[i]);
-
- ACE_DEBUG ((LM_DEBUG, "listening as object '%s'\n", str));
- CORBA_string_free (str);
-
- oa_ptr->obj_is_ready (my_cubit[i], nil);
- oa_ptr->registerAlias (my_cubit[i], obj_str);
-
- if (env.exception () != 0)
- {
- // env.print_exception ("object2string");
- return 1;
- }
-
- ACE_OS::puts ((char *) str);
- ACE_OS::fflush (stdout);
- //ACE_DEBUG ((LM_DEBUG,"Object Created at: '%ul'", obj));
- CORBA::string_free (obj_str);
- }
-
- // Handle requests for this object until we're killed, or one of the
- // methods asks us to exit.
- XpsEventService eventService;
- eventService.mainloop(); // control will not return to this point
- // orb_ptr->run ();
-
- // Shut down the OA -- recycles all underlying resources (e.g. file
- // descriptors, etc).
-
- // oa_ptr->clean_shutdown (env);
-
- // Need to clean up and do a CORBA::release on everything we've
- // created!
- for (i = 0; i < num_of_objs_; i++)
- {
- delete my_cubit[i];
- }
-
- // Free resources
- CORBA::release (orb_ptr);
- CORBA::release (oa_ptr);
- }
- catch(const CORBA::SystemException& exc)
- {
- ACE_DEBUG ((LM_DEBUG,
- "CORBA::SystemException caught: %s (minor: %d): svr.cpp\n\n",
- exc._repository_id (),
- exc.minor ()));
- }
- catch(const CORBA::UserException& exc)
- {
- ACE_DEBUG ((LM_DEBUG,
- "CORBA::UserException caught: %s: svr.cpp\n\n",
- exc._repository_id ()));
- }
- catch(...)
- {
- ACE_DEBUG ((LM_DEBUG,
- "Exception caught: svr.cpp\n\n"));
- }
-
- return 0;
-}
-
-static char *hostname = NULL;
-static int base_port = 0;
-
-// Parses the command line arguments and returns an error status
-
-static int num_of_objs = 1;
-
-static int
-parse_args (int argc, char *argv[])
-{
- ACE_Get_Opt opts (argc, argv, "h:p:n:");
- int c;
-
- while ((c = opts ()) != -1)
- switch (c)
- {
- case 'h':
- hostname = opts.optarg;
- break;
- case 'p':
- base_port = ACE_OS::atoi (opts.optarg);
- break;
- case 'n':
- num_of_objs = ACE_OS::atoi (opts.optarg);
- break;
- case '?':
- default:
- ACE_ERROR_RETURN ((LM_ERROR,
- "usage: %s"
- " -p port"
- " -h my_hostname"
- " -n num_objects"
- "\n", argv [0]), 1);
- }
-
- return 0; // Indicates successful parsing of command line
-}
-
-// Standard command line parsing utilities used.
-
-int
-main (int argc, char *argv[])
-{
-
-#if 0
- parse_args (argc, argv);
-
- if ((hostname == NULL) || (base_port == 0))
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "usage: %s "
- " -p port -h my_hostname"
- "\n",argv [0]), 1);
-
- }
-#endif
-
- const size_t arg_size =
- strlen("rate20 -ORBport %d -ORBhost %s")
- + 5 /* port number */
- + MAXHOSTNAMELEN /* hostname */
- + 1 /* zero terminator */;
-
- char *args1 = 0;
- ACE_NEW_RETURN (args1, char[arg_size], -1);
-
- ::sprintf (args1, "rate20");
- Cubit_Task task1 (args1 , "internet", 1);
- ACE_Sched_Priority priority;
-#if defined(VXWORKS)
- priority = ACE_Sched_Params::priority_max (ACE_SCHED_FIFO, ACE_SCOPE_THREAD) + 6;
-#else
- priority = ACE_Sched_Params::priority_max (ACE_SCHED_FIFO, ACE_SCOPE_THREAD);
-#endif
- ACE_DEBUG ((LM_DEBUG, "Creating servant with high priority\n"));
- task1.activate (THR_BOUND, 1, 0, priority);
-
-
- char *args2 = 0;
- ACE_NEW_RETURN (args2, char[arg_size], -1);
-
- ::sprintf (args2, "rate10");//, base_port+1, hostname);
- Cubit_Task task2 (args2 , "internet", 1);
- priority =
- ACE_Sched_Params::priority_min (ACE_SCHED_FIFO, ACE_SCOPE_THREAD);
- ACE_DEBUG ((LM_DEBUG, "Creating servant with low priority\n"));
- task2.activate (THR_BOUND, 1, 0, priority);
-
- ACE_Thread_Manager::instance ()->wait ();
-
- delete [] args1;
- delete [] args2;
-
- return 0;
-}