summaryrefslogtreecommitdiff
path: root/TAO/tests/Cubit/CORBAplus/MT_Cubit
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/tests/Cubit/CORBAplus/MT_Cubit')
-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
12 files changed, 0 insertions, 1250 deletions
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;
-}