diff options
author | pradeep <pradeep@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-08-18 20:21:19 +0000 |
---|---|---|
committer | pradeep <pradeep@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-08-18 20:21:19 +0000 |
commit | 0a0f74ba6269bebdc6c4d7859c94d9567c002ddf (patch) | |
tree | 9b01e4f02d26376b024eb19291556fae43b65991 /TAO/orbsvcs | |
parent | 5276fe14aad565a4fa37b7b3703952a12e7df6bf (diff) | |
download | ATCD-0a0f74ba6269bebdc6c4d7859c94d9567c002ddf.tar.gz |
Fri Aug 18 15:20:50 2000 Pradeep Gore <pradeep@cs.wustl.edu>
Diffstat (limited to 'TAO/orbsvcs')
-rw-r--r-- | TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp | 2 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/Notify/Basic/IdAssignment.cpp | 417 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/Notify/Basic/IdAssignment.h | 58 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/Notify/Basic/LifeCycleTest.cpp | 239 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/Notify/Basic/LifeCycleTest.h | 46 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/Notify/Basic/Makefile | 372 | ||||
-rw-r--r-- | TAO/orbsvcs/tests/Notify/Basic/README | 33 |
7 files changed, 1164 insertions, 3 deletions
diff --git a/TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp b/TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp index 679c369be22..93f88d281b6 100644 --- a/TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp +++ b/TAO/orbsvcs/tests/Notify/Basic/ConnectDisconnect.cpp @@ -4,7 +4,7 @@ #include "ace/Get_Opt.h" #include "ConnectDisconnect.h" -ACE_RCSID (Notify_Tests, ConnectDisconnect, "$") +ACE_RCSID (Notify_Tests, ConnectDisconnect, "$Id$") #define CD_IMPLEMENT_ENTITY(X)\ \ diff --git a/TAO/orbsvcs/tests/Notify/Basic/IdAssignment.cpp b/TAO/orbsvcs/tests/Notify/Basic/IdAssignment.cpp new file mode 100644 index 00000000000..c6728bbefbd --- /dev/null +++ b/TAO/orbsvcs/tests/Notify/Basic/IdAssignment.cpp @@ -0,0 +1,417 @@ +// $Id$ + +#include "ace/Arg_Shifter.h" +#include "ace/Get_Opt.h" +#include "orbsvcs/CosNamingC.h" +#include "orbsvcs/CosNotifyCommC.h" +#include "IdAssignment.h" + +ACE_RCSID (Notify_Tests, IdAssignment, "$Id$") + +IdAssignment::IdAssignment (void) + :iter_ (3), + ec_count_ (3), + consumer_admin_count_ (3), + supplier_admin_count_ (3) +{ +} + +IdAssignment::~IdAssignment () +{ +} + +int +IdAssignment::parse_args(int argc, char *argv[]) +{ + ACE_Arg_Shifter arg_shifter (argc, argv); + + char *current_arg = 0; + while (arg_shifter.is_anything_left ()) + { + if ((current_arg = arg_shifter.get_the_parameter ("-iter"))) + { + this->iter_ = ACE_OS::atoi (current_arg); + // The number of times to repeat the test + arg_shifter.consume_arg (); + } + if ((current_arg = arg_shifter.get_the_parameter ("-ec_count"))) + { + this->ec_count_ = ACE_OS::atoi (current_arg); + arg_shifter.consume_arg (); + } + if ((current_arg = arg_shifter.get_the_parameter ("-ca_count"))) + { + this->consumer_admin_count_ = ACE_OS::atoi (current_arg); + arg_shifter.consume_arg (); + } + if ((current_arg = arg_shifter.get_the_parameter ("-sa_count"))) + { + this->supplier_admin_count_ = ACE_OS::atoi (current_arg); + arg_shifter.consume_arg (); + } + else if (arg_shifter.cur_arg_strncasecmp ("-?") == 0) + { + ACE_DEBUG((LM_DEBUG, + "usage: %s " + "-iter <count>", + "-ec_count <count>", + "-ca_count <count>", + "-sa_count <count>\n", + argv[0], argv[0])); + + arg_shifter.consume_arg (); + + return -1; + } + else + { + arg_shifter.ignore_arg (); + } + } + return 0; +} + +void +IdAssignment::init(int argc, char *argv[], CORBA::Environment &ACE_TRY_ENV) +{ + CORBA::ORB_var orb = CORBA::ORB_init(argc, argv, "", ACE_TRY_ENV); + ACE_CHECK; + + CORBA::Object_var rootObj = orb->resolve_initial_references("NameService", + ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil(rootObj.in())) + { + ACE_ERROR ((LM_ERROR, + " (%P|%t) Unable to resolve naming service !\n")); + return; + + } + CosNaming::NamingContext_var rootNC = + CosNaming::NamingContext::_narrow(rootObj.in(), ACE_TRY_ENV); + ACE_CHECK; + + CosNaming::Name name(1); + name.length(1); + name[0].id = CORBA::string_dup("NotifyEventChannelFactory"); + + CORBA::Object_var obj = rootNC->resolve(name, ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil(obj.in())) + { + ACE_ERROR((LM_ERROR, + " (%P|%t) Unable to locate Notify_Service \n")); + return; + } + + notify_factory_ = CosNotifyChannelAdmin::EventChannelFactory::_narrow( + obj.in(), + ACE_TRY_ENV); + ACE_CHECK; + +} + +CosNotifyChannelAdmin::ChannelID +IdAssignment::create_ec(CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::ChannelID id; + CosNotification::QoSProperties initial_qos; + CosNotification::AdminProperties initial_admin; + CosNotifyChannelAdmin::EventChannel_var ec = + notify_factory_->create_channel(initial_qos, + initial_admin, + id, + ACE_TRY_ENV); +// ACE_CHECK_RETURN; + + return id; +} + + +void +IdAssignment::destroy_ec(CosNotifyChannelAdmin::ChannelID id, + CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::EventChannel_var ec = + notify_factory_->get_event_channel(id, ACE_TRY_ENV); + + ACE_CHECK; + + if (CORBA::is_nil(ec.in())) + { + ACE_ERROR((LM_ERROR, + " (%P|%t) Unable to find event channel\n")); + return; + + } + + ec->destroy(ACE_TRY_ENV); + ACE_CHECK; +} + +CosNotifyChannelAdmin::AdminID +IdAssignment::create_supplier_admin (CosNotifyChannelAdmin::ChannelID channel_id, + CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::AdminID adminid; + CosNotifyChannelAdmin::InterFilterGroupOperator ifgop = + CosNotifyChannelAdmin::OR_OP; + + CosNotifyChannelAdmin::EventChannel_var ec = + notify_factory_->get_event_channel(channel_id, ACE_TRY_ENV); + + ACE_CHECK_RETURN (0); + + if (CORBA::is_nil(ec.in())) + { + ACE_ERROR((LM_ERROR, + " (%P|%t) Unable to find event channel\n")); + return 0; + + } + + CosNotifyChannelAdmin::SupplierAdmin_var supplier_admin = + ec->new_for_suppliers (ifgop, adminid, ACE_TRY_ENV); + ACE_CHECK_RETURN (0); + + if (CORBA::is_nil (supplier_admin.in())) + ACE_ERROR_RETURN ((LM_ERROR, + " (%P|%t) Unable to create supplier admin\n"),0); + + ACE_DEBUG((LM_DEBUG, "created supplier admin\n")); + + return adminid; +} + +CosNotifyChannelAdmin::AdminID +IdAssignment::create_consumer_admin (CosNotifyChannelAdmin::ChannelID channel_id, + CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::AdminID adminid; + CosNotifyChannelAdmin::InterFilterGroupOperator ifgop = + CosNotifyChannelAdmin::OR_OP; + + CosNotifyChannelAdmin::EventChannel_var ec = + notify_factory_->get_event_channel(channel_id, ACE_TRY_ENV); + + ACE_CHECK_RETURN (0); + + if (CORBA::is_nil(ec.in())) + { + ACE_ERROR((LM_ERROR, + " (%P|%t) Unable to find event channel\n")); + return 0; + + } + + CosNotifyChannelAdmin::ConsumerAdmin_var consumer_admin = + ec->new_for_consumers (ifgop, adminid, ACE_TRY_ENV); + ACE_CHECK_RETURN (0); + + if (CORBA::is_nil (consumer_admin.in())) + ACE_ERROR_RETURN ((LM_ERROR, + " (%P|%t) Unable to create consumer admin\n"),0); + + ACE_DEBUG((LM_DEBUG, "created consumer admin\n")); + + return adminid; +} + + +void +IdAssignment::destroy_consumer_admin (CosNotifyChannelAdmin::ChannelID channel_id, + CosNotifyChannelAdmin::AdminID admin_id, + CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::EventChannel_var ec = + notify_factory_->get_event_channel(channel_id, ACE_TRY_ENV); + + ACE_CHECK; + + if (CORBA::is_nil(ec.in())) + { + ACE_ERROR((LM_ERROR, + " (%P|%t) Unable to find event channel\n")); + return; + + } + + CosNotifyChannelAdmin::ConsumerAdmin_var consumer_admin = + ec->get_consumeradmin (admin_id, ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil (consumer_admin.in())) + ACE_ERROR ((LM_ERROR, + " (%P|%t) Unable to get consumer admin\n")); + + consumer_admin->destroy(ACE_TRY_ENV); + ACE_CHECK; + + ACE_DEBUG((LM_DEBUG, "destroyed consumer admin\n")); +} + + +void +IdAssignment::destroy_supplier_admin (CosNotifyChannelAdmin::ChannelID channel_id, + CosNotifyChannelAdmin::AdminID admin_id, + CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::EventChannel_var ec = + notify_factory_->get_event_channel(channel_id, ACE_TRY_ENV); + + ACE_CHECK; + + if (CORBA::is_nil(ec.in())) + { + ACE_ERROR((LM_ERROR, + " (%P|%t) Unable to find event channel\n")); + } + + CosNotifyChannelAdmin::SupplierAdmin_var supplier_admin = + ec->get_supplieradmin (admin_id, ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil (supplier_admin.in())) + ACE_ERROR ((LM_ERROR, + " (%P|%t) Unable to get supplier admin\n")); + + supplier_admin->destroy(ACE_TRY_ENV); + ACE_CHECK; + + ACE_DEBUG((LM_DEBUG, "destroyed supplier admin\n")); +} + +void +IdAssignment::run_test(CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::ChannelID* ec_id = + new CosNotifyChannelAdmin::ChannelID [this->ec_count_]; + + CosNotifyChannelAdmin::AdminID* consumer_admin_id = + new CosNotifyChannelAdmin::AdminID [this->consumer_admin_count_]; + + CosNotifyChannelAdmin::AdminID* supplier_admin_id = + new CosNotifyChannelAdmin::AdminID [this->supplier_admin_count_]; + + //*************** ************ ************ ************ ************ + + for (int i = 0; i < this->iter_; ++i) + { + int ec_count; + for (ec_count = 0; ec_count < this->ec_count_; ++ec_count) + { + ec_id [ec_count] = create_ec(ACE_TRY_ENV); + ACE_CHECK; + + // connect <consumer_admin_count_> number of consumers to the current ec. + for (int cons_count = 0; cons_count < this->consumer_admin_count_; ++cons_count) + { + consumer_admin_id [cons_count] = create_consumer_admin (ec_id [ec_count], + ACE_TRY_ENV); + ACE_CHECK; + } + + // connect <supplier_admin_count_> number of suppliers to the current ec. + for (int supp_count = 0; supp_count < this->supplier_admin_count_; ++supp_count) + { + supplier_admin_id [supp_count] = create_supplier_admin (ec_id [ec_count], + ACE_TRY_ENV); + ACE_CHECK; + } + } + + // destroy the ec, the admins should destroy too. + for (ec_count = 0; ec_count < this->ec_count_; ++ec_count) + { + this->destroy_ec (ec_id [ec_count], ACE_TRY_ENV); + ACE_CHECK; + } + + } // for + + + //*************** ************ ************ ************ ************ ************ + // repeat, but this time destroy the admins explicity + for (i = 0; i < this->iter_; ++i) + { + int ec_count; + for (ec_count = 0; ec_count < this->ec_count_; ++ec_count) + { + ec_id [ec_count] = create_ec(ACE_TRY_ENV); + ACE_CHECK; + + int cons_count, supp_count; + // connect <consumer_admin_count_> number of consumers to the current ec. + for (cons_count = 0; cons_count < this->consumer_admin_count_; ++cons_count) + { + consumer_admin_id [cons_count] = create_consumer_admin (ec_id [ec_count], + ACE_TRY_ENV); + ACE_CHECK; + } + + // connect <supplier_admin_count_> number of suppliers to the current ec. + for (supp_count = 0; supp_count < this->supplier_admin_count_; ++supp_count) + { + supplier_admin_id [supp_count] = create_supplier_admin (ec_id [ec_count], + ACE_TRY_ENV); + ACE_CHECK; + } + // destroy the admins + + // destroy consumer admins + for (cons_count = 0; cons_count < this->consumer_admin_count_; ++cons_count) + { + destroy_consumer_admin (ec_id [ec_count],consumer_admin_id [cons_count], + ACE_TRY_ENV); + ACE_CHECK; + } + + // destroy supplier admins + for (supp_count = 0; supp_count < this->supplier_admin_count_; ++supp_count) + { + destroy_supplier_admin (ec_id [ec_count], supplier_admin_id [supp_count], + ACE_TRY_ENV); + ACE_CHECK; + } + + } // ec_count + + // destroy the ec, + for (ec_count = 0; ec_count < this->ec_count_; ++ec_count) + { + this->destroy_ec (ec_id [ec_count], ACE_TRY_ENV); + ACE_CHECK; + } + + } // for + + //*************** ************ ************ ************ ************ ************ +} + +int main(int argc, char* argv[]) +{ + ACE_DECLARE_NEW_CORBA_ENV; + ACE_TRY + { + IdAssignment test; + + test.parse_args (argc, argv); + + test.init(argc, argv, ACE_TRY_ENV); + ACE_TRY_CHECK; + + test.run_test(ACE_TRY_ENV); + ACE_TRY_CHECK; + } + ACE_CATCHANY + { + ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, + "Caught exception:"); + return 1; + } + ACE_ENDTRY; + ACE_DEBUG ((LM_DEBUG, "IdAssignment test suceeded\n")); + return 0; +} diff --git a/TAO/orbsvcs/tests/Notify/Basic/IdAssignment.h b/TAO/orbsvcs/tests/Notify/Basic/IdAssignment.h new file mode 100644 index 00000000000..a1b4f7e293d --- /dev/null +++ b/TAO/orbsvcs/tests/Notify/Basic/IdAssignment.h @@ -0,0 +1,58 @@ +/* -*- C++ -*- */ +// $Id$ +// ========================================================================== +// +// = FILENAME +// LifeCycleTest.h +// +// = DESCRIPTION +// Test to check if ec, admin are assigned id's correctly. +// +// = AUTHORS +// Chanaka Liyanaarachchi <chanaka@ociweb.com> and Pradeep Gore <pradeep@cs.wustl.edu> +// +// ========================================================================== + +#ifndef IDASSIGNMENT_H +#define IDASSIGNMENT_H + +#include "orbsvcs/CosNotifyChannelAdminC.h" + +class IdAssignment +{ +public: + IdAssignment (void); + ~IdAssignment (); + + int parse_args(int argc, char *argv[]); + void init(int argc, char *argv[], CORBA::Environment &ACE_TRY_ENV); + void run_test(CORBA::Environment &ACE_TRY_ENV); + +private: + CosNotifyChannelAdmin::ChannelID create_ec(CORBA::Environment &ACE_TRY_ENV); + void destroy_ec(CosNotifyChannelAdmin::ChannelID id, + CORBA::Environment &ACE_TRY_ENV); + + CosNotifyChannelAdmin::AdminID create_supplier_admin (CosNotifyChannelAdmin::ChannelID channel_id, CORBA::Environment &ACE_TRY_ENV); + CosNotifyChannelAdmin::AdminID create_consumer_admin (CosNotifyChannelAdmin::ChannelID channel_id, CORBA::Environment &ACE_TRY_ENV); + + void destroy_consumer_admin (CosNotifyChannelAdmin::ChannelID channel_id, CosNotifyChannelAdmin::AdminID admin_id, CORBA::Environment &ACE_TRY_ENV); + void destroy_supplier_admin (CosNotifyChannelAdmin::ChannelID channel_id, CosNotifyChannelAdmin::AdminID admin_id, CORBA::Environment &ACE_TRY_ENV); + + // = Data members + CosNotifyChannelAdmin::EventChannelFactory_var notify_factory_; + + int iter_; + // Number of iterations for the test. + + int ec_count_; + // Numbers of EC's to create. + + int consumer_admin_count_; + // Number of consumer admins to create per ec. + + int supplier_admin_count_; + // Number of consumer admins to create per ec. +}; + +#endif /* IDASSIGNMENT_H */ diff --git a/TAO/orbsvcs/tests/Notify/Basic/LifeCycleTest.cpp b/TAO/orbsvcs/tests/Notify/Basic/LifeCycleTest.cpp new file mode 100644 index 00000000000..68e448c9477 --- /dev/null +++ b/TAO/orbsvcs/tests/Notify/Basic/LifeCycleTest.cpp @@ -0,0 +1,239 @@ +//$Id$ + +#include "ace/Arg_Shifter.h" +#include "ace/Get_Opt.h" +#include <orbsvcs/CosNamingC.h> +#include <orbsvcs/CosNotifyCommC.h> +#include <orbsvcs/CosNotifyChannelAdminC.h> + +#include "LifeCycleTest.h" + +ACE_RCSID (Notify_Tests, LifeCycleTest, "$Id$") + +LifeCycleTest::LifeCycleTest (void) + :count_ (10) // default +{ +} + +LifeCycleTest::~LifeCycleTest () +{ +} + +int +LifeCycleTest::parse_args(int argc, char *argv[]) +{ + ACE_Arg_Shifter arg_shifter (argc, argv); + + char *current_arg = 0; + while (arg_shifter.is_anything_left ()) + { + if ((current_arg = arg_shifter.get_the_parameter ("-count"))) + { + this->count_ = ACE_OS::atoi (current_arg); + // The number of times to create and destroy + arg_shifter.consume_arg (); + } + else if (arg_shifter.cur_arg_strncasecmp ("-?") == 0) + { + ACE_DEBUG((LM_DEBUG, + "usage: %s " + "-count testcount \n", + argv[0], argv[0])); + + arg_shifter.consume_arg (); + + return -1; + } + else + { + arg_shifter.ignore_arg (); + } + } + return 0; +} + +void +LifeCycleTest::init(int argc, char* argv[], CORBA::Environment &ACE_TRY_ENV) +{ + CORBA::ORB_var orb = CORBA::ORB_init(argc, argv, "", ACE_TRY_ENV); + ACE_CHECK; + + CORBA::Object_var rootObj = orb->resolve_initial_references("NameService", + ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil(rootObj.in())) + { + ACE_ERROR ((LM_ERROR, + " (%P|%t) Unable to resolve naming service !\n")); + return; + } + CosNaming::NamingContext_var rootNC = + CosNaming::NamingContext::_narrow(rootObj.in(), + ACE_TRY_ENV); + ACE_CHECK; + + CosNaming::Name name(1); + name.length(1); + name[0].id = CORBA::string_dup("NotifyEventChannelFactory"); + + CORBA::Object_var obj = rootNC->resolve(name, ACE_TRY_ENV); + ACE_CHECK; + + notify_factory_ = + CosNotifyChannelAdmin::EventChannelFactory::_narrow(obj.in(), + ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil(notify_factory_.in())) + { + ACE_ERROR ((LM_ERROR, + " (%P|%t) Unable to locate Notify_Service \n")); + + return; + } +} + +void +LifeCycleTest::run_test(CORBA::Environment &ACE_TRY_ENV) +{ + for (int i = 0; i < this->count_; ++i) + { + this->create_ec(ACE_TRY_ENV); + this->create_supplier_admin(ACE_TRY_ENV); + this->create_consumer_admin(ACE_TRY_ENV); + this->destroy_consumer_admin(ACE_TRY_ENV); + this->destroy_supplier_admin(ACE_TRY_ENV); + this->destroy_ec(ACE_TRY_ENV); + } +} + +void +LifeCycleTest::create_ec(CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::ChannelID id; + CosNotification::QoSProperties initial_qos; + CosNotification::AdminProperties initial_admin; + + ec_ = notify_factory_->create_channel(initial_qos, + initial_admin, + id, + ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil (ec_.in())) { + ACE_ERROR ((LM_ERROR, + " (%P|%t) Unable to create event channel\n")); + return; + } + + ACE_DEBUG((LM_DEBUG, "created event channel\n")); +} + + +void +LifeCycleTest::create_supplier_admin(CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::AdminID adminid; + CosNotifyChannelAdmin::InterFilterGroupOperator ifgop = + CosNotifyChannelAdmin::OR_OP; + + supplier_admin_ = ec_->new_for_suppliers (ifgop, adminid, ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil (supplier_admin_.in())) { + ACE_ERROR ((LM_ERROR, + " (%P|%t) Unable to create supplier admin\n")); + return; + } + + ACE_DEBUG((LM_DEBUG, "created supplier admin\n")); +} + +void +LifeCycleTest::create_consumer_admin(CORBA::Environment &ACE_TRY_ENV) +{ + CosNotifyChannelAdmin::AdminID adminid; + CosNotifyChannelAdmin::InterFilterGroupOperator ifgop = + CosNotifyChannelAdmin::OR_OP; + + consumer_admin_ = ec_->new_for_consumers (ifgop, adminid, ACE_TRY_ENV); + ACE_CHECK; + + if (CORBA::is_nil (consumer_admin_.in())) { + ACE_ERROR ((LM_ERROR, + " (%P|%t) Unable to find supplier admin\n")); + return; + } + + ACE_DEBUG((LM_DEBUG, "created consumer admin\n")); +} + +void +LifeCycleTest::destroy_supplier_admin(CORBA::Environment &ACE_TRY_ENV) +{ + supplier_admin_->destroy(ACE_TRY_ENV); + ACE_CHECK; + + ACE_DEBUG((LM_DEBUG, "destroyed supplier admin\n")); +} + +void +LifeCycleTest::destroy_consumer_admin(CORBA::Environment &ACE_TRY_ENV) +{ + consumer_admin_->destroy(ACE_TRY_ENV); + ACE_CHECK; + + ACE_DEBUG((LM_DEBUG, "destroyed consumer admin\n")); +} + +void +LifeCycleTest::destroy_ec(CORBA::Environment &ACE_TRY_ENV) +{ + ec_->destroy(ACE_TRY_ENV); + ACE_CHECK; + ACE_DEBUG((LM_DEBUG, "destroyed event channel\n")); +} + + +int +main(int argc, char *argv[]) +{ + ACE_DECLARE_NEW_CORBA_ENV; + ACE_TRY + { + LifeCycleTest test; + + test.parse_args (argc, argv); + + test.init(argc, argv, ACE_TRY_ENV); + ACE_TRY_CHECK; + + test.run_test(ACE_TRY_ENV); + ACE_TRY_CHECK; + } + ACE_CATCH(CosNotification::UnsupportedAdmin, ex) + { + ACE_PRINT_EXCEPTION (ex, "Unsupported Admin Properties"); + } + ACE_CATCH(CosNotification::UnsupportedQoS, ex) + { + ACE_PRINT_EXCEPTION (ex, "Unsupported QoS Properties"); + } + ACE_CATCH(CosNotifyChannelAdmin::AdminNotFound, ex) + { + ACE_PRINT_EXCEPTION (ex, "destroying admin object"); + } + ACE_CATCH(CosNotifyChannelAdmin::AdminNotFound, ex) + { + ACE_PRINT_EXCEPTION (ex, "destroying admin object"); + } + ACE_CATCHANY + { + ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION, + "Caught exception:"); + return 1; + } + ACE_ENDTRY; + return 0; +} diff --git a/TAO/orbsvcs/tests/Notify/Basic/LifeCycleTest.h b/TAO/orbsvcs/tests/Notify/Basic/LifeCycleTest.h new file mode 100644 index 00000000000..bba9561b41b --- /dev/null +++ b/TAO/orbsvcs/tests/Notify/Basic/LifeCycleTest.h @@ -0,0 +1,46 @@ +/* -*- C++ -*- */ +// $Id$ +// ========================================================================== +// +// = FILENAME +// LifeCycleTest.h +// +// = DESCRIPTION +// Test to check it ec and admin objects are destroyed. +// +// = AUTHOR +// Chanaka Liyanaarachchi <chanaka@ociweb.com> +// +// ========================================================================== + +#ifndef NOTIFY_LIFECYCLETST_H +#define NOTIFY_LIFECYCLETST_H + +class LifeCycleTest +{ +public: + LifeCycleTest (void); + ~LifeCycleTest (); + + void init(int argc, char *argv[], CORBA::Environment &ACE_TRY_ENV); + void run_test(CORBA::Environment &ACE_TRY_ENV); + int parse_args(int argc, char *argv[]); + +private: + void create_ec(CORBA::Environment &ACE_TRY_ENV); + void create_supplier_admin(CORBA::Environment &ACE_TRY_ENV); + void create_consumer_admin(CORBA::Environment &ACE_TRY_ENV); + void destroy_ec(CORBA::Environment &ACE_TRY_ENV); + void destroy_supplier_admin(CORBA::Environment &ACE_TRY_ENV); + void destroy_consumer_admin(CORBA::Environment &ACE_TRY_ENV); + + CosNotifyChannelAdmin::EventChannelFactory_var notify_factory_; + CosNotifyChannelAdmin::EventChannel_var ec_; + CosNotifyChannelAdmin::SupplierAdmin_var supplier_admin_; + CosNotifyChannelAdmin::ConsumerAdmin_var consumer_admin_; + + int count_; + // number of times to create destroy. +}; + +#endif /* NOTIFY_LIFECYCLETST_H */ diff --git a/TAO/orbsvcs/tests/Notify/Basic/Makefile b/TAO/orbsvcs/tests/Notify/Basic/Makefile index 728f81572bf..0b1a9d3a7d0 100644 --- a/TAO/orbsvcs/tests/Notify/Basic/Makefile +++ b/TAO/orbsvcs/tests/Notify/Basic/Makefile @@ -12,7 +12,9 @@ ifndef TAO_ROOT TAO_ROOT = $(ACE_ROOT)/TAO endif # ! TAO_ROOT -BIN2 = ConnectDisconnect +BIN2 = ConnectDisconnect \ + LifeCycleTest \ + IdAssignment #### If the orbsvcs library wasn't built with all components, don't #### try to build certain tests. @@ -28,6 +30,7 @@ LDLIBS = -lNotifyTests -lTAO_CosNotification -lTAO_Svc_Utils -lTAO_CosNaming -lT CPPFLAGS += -I../lib -I$(TAO_ROOT) -I$(TAO_ROOT)/orbsvcs \ $(foreach svc, $(TAO_ORBSVCS), -DTAO_ORBSVCS_HAS_$(svc)) + BIN = $(BIN2) #---------------------------------------------------------------------------- # Include macros and targets #---------------------------------------------------------------------------- @@ -432,6 +435,373 @@ endif # Notify ../lib/Notify_PushSupplier.h ../lib/Notify_SequencePushConsumer.h \ ../lib/Notify_SequencePushSupplier.h +.obj/LifeCycleTest.o .obj/LifeCycleTest.so .shobj/LifeCycleTest.o .shobj/LifeCycleTest.so: LifeCycleTest.cpp \ + $(ACE_ROOT)/ace/Arg_Shifter.h \ + $(ACE_ROOT)/ace/pre.h \ + $(ACE_ROOT)/ace/OS.h \ + $(ACE_ROOT)/ace/config-sunos5.6.h \ + $(ACE_ROOT)/ace/config-sunos5.5.h \ + $(ACE_ROOT)/ace/post.h \ + $(ACE_ROOT)/ace/ACE_export.h \ + $(ACE_ROOT)/ace/svc_export.h \ + $(ACE_ROOT)/ace/ace_wchar.h \ + $(ACE_ROOT)/ace/OS_Dirent.h \ + $(ACE_ROOT)/ace/OS_Export.h \ + $(ACE_ROOT)/ace/OS_Dirent.inl \ + $(ACE_ROOT)/ace/OS_String.h \ + $(ACE_ROOT)/ace/OS_String.inl \ + $(ACE_ROOT)/ace/OS_Memory.h \ + $(ACE_ROOT)/ace/OS_Memory.inl \ + $(ACE_ROOT)/ace/OS_TLI.h \ + $(ACE_ROOT)/ace/OS_TLI.inl \ + $(ACE_ROOT)/ace/Min_Max.h \ + $(ACE_ROOT)/ace/streams.h \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(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/Get_Opt.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/ACE.i \ + $(ACE_ROOT)/ace/Get_Opt.i \ + LifeCycleTest.h + +.obj/IdAssignment.o .obj/IdAssignment.so .shobj/IdAssignment.o .shobj/IdAssignment.so: IdAssignment.cpp \ + $(ACE_ROOT)/ace/Arg_Shifter.h \ + $(ACE_ROOT)/ace/pre.h \ + $(ACE_ROOT)/ace/OS.h \ + $(ACE_ROOT)/ace/config-sunos5.6.h \ + $(ACE_ROOT)/ace/config-sunos5.5.h \ + $(ACE_ROOT)/ace/post.h \ + $(ACE_ROOT)/ace/ACE_export.h \ + $(ACE_ROOT)/ace/svc_export.h \ + $(ACE_ROOT)/ace/ace_wchar.h \ + $(ACE_ROOT)/ace/OS_Dirent.h \ + $(ACE_ROOT)/ace/OS_Export.h \ + $(ACE_ROOT)/ace/OS_Dirent.inl \ + $(ACE_ROOT)/ace/OS_String.h \ + $(ACE_ROOT)/ace/OS_String.inl \ + $(ACE_ROOT)/ace/OS_Memory.h \ + $(ACE_ROOT)/ace/OS_Memory.inl \ + $(ACE_ROOT)/ace/OS_TLI.h \ + $(ACE_ROOT)/ace/OS_TLI.inl \ + $(ACE_ROOT)/ace/Min_Max.h \ + $(ACE_ROOT)/ace/streams.h \ + $(ACE_ROOT)/ace/Basic_Types.h \ + $(ACE_ROOT)/ace/Basic_Types.i \ + $(ACE_ROOT)/ace/Trace.h \ + $(ACE_ROOT)/ace/OS.i \ + $(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/Get_Opt.h \ + $(ACE_ROOT)/ace/ACE.h \ + $(ACE_ROOT)/ace/ACE.i \ + $(ACE_ROOT)/ace/Get_Opt.i \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNamingC.h \ + $(TAO_ROOT)/tao/corba.h \ + $(TAO_ROOT)/tao/corbafwd.h \ + $(ACE_ROOT)/ace/CDR_Stream.h \ + $(ACE_ROOT)/ace/Message_Block.h \ + $(ACE_ROOT)/ace/Malloc.h \ + $(ACE_ROOT)/ace/Malloc_Base.h \ + $(ACE_ROOT)/ace/Based_Pointer_T.h \ + $(ACE_ROOT)/ace/Based_Pointer_T.i \ + $(ACE_ROOT)/ace/Based_Pointer_T.cpp \ + $(ACE_ROOT)/ace/Based_Pointer_Repository.h \ + $(ACE_ROOT)/ace/Singleton.h \ + $(ACE_ROOT)/ace/Synch.h \ + $(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/Synch_T.cpp \ + $(ACE_ROOT)/ace/Singleton.i \ + $(ACE_ROOT)/ace/Singleton.cpp \ + $(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/Managed_Object.cpp \ + $(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/Free_List.cpp \ + $(ACE_ROOT)/ace/Malloc_T.i \ + $(ACE_ROOT)/ace/Malloc_T.cpp \ + $(ACE_ROOT)/ace/Memory_Pool.h \ + $(ACE_ROOT)/ace/Signal.h \ + $(ACE_ROOT)/ace/Containers.h \ + $(ACE_ROOT)/ace/Containers.i \ + $(ACE_ROOT)/ace/Containers_T.h \ + $(ACE_ROOT)/ace/Containers_T.i \ + $(ACE_ROOT)/ace/Containers_T.cpp \ + $(ACE_ROOT)/ace/Signal.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/Message_Block_T.h \ + $(ACE_ROOT)/ace/Message_Block_T.i \ + $(ACE_ROOT)/ace/Message_Block_T.cpp \ + $(ACE_ROOT)/ace/SString.h \ + $(ACE_ROOT)/ace/SString.i \ + $(ACE_ROOT)/ace/CDR_Stream.i \ + $(TAO_ROOT)/tao/try_macros.h \ + $(TAO_ROOT)/tao/orbconf.h \ + $(ACE_ROOT)/ace/CORBA_macros.h \ + $(TAO_ROOT)/tao/varbase.h \ + $(TAO_ROOT)/tao/TAO_Export.h \ + $(TAO_ROOT)/tao/corbafwd.i \ + $(TAO_ROOT)/tao/Environment.h \ + $(TAO_ROOT)/tao/Environment.i \ + $(TAO_ROOT)/tao/ORB.h \ + $(TAO_ROOT)/tao/Exception.h \ + $(TAO_ROOT)/tao/Exception.i \ + $(TAO_ROOT)/tao/IOR_LookupTable.h \ + $(ACE_ROOT)/ace/Hash_Map_Manager.h \ + $(ACE_ROOT)/ace/Functor.h \ + $(ACE_ROOT)/ace/Functor.i \ + $(ACE_ROOT)/ace/Functor_T.h \ + $(ACE_ROOT)/ace/Functor_T.i \ + $(ACE_ROOT)/ace/Functor_T.cpp \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.h \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.i \ + $(ACE_ROOT)/ace/Hash_Map_Manager_T.cpp \ + $(ACE_ROOT)/ace/Service_Config.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/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/Timer_Queue_T.cpp \ + $(ACE_ROOT)/ace/Reactor.i \ + $(ACE_ROOT)/ace/Reactor_Impl.h \ + $(ACE_ROOT)/ace/Svc_Conf_Tokens.h \ + $(TAO_ROOT)/tao/Services.h \ + $(TAO_ROOT)/tao/Sequence.h \ + $(TAO_ROOT)/tao/Managed_Types.h \ + $(TAO_ROOT)/tao/Managed_Types.i \ + $(TAO_ROOT)/tao/Sequence.i \ + $(TAO_ROOT)/tao/Sequence_T.h \ + $(TAO_ROOT)/tao/Sequence_T.i \ + $(TAO_ROOT)/tao/Sequence_T.cpp \ + $(TAO_ROOT)/tao/Services.i \ + $(TAO_ROOT)/tao/IORManipulation.h \ + $(TAO_ROOT)/tao/LocalObject.h \ + $(TAO_ROOT)/tao/Object.h \ + $(TAO_ROOT)/tao/Object.i \ + $(TAO_ROOT)/tao/LocalObject.i \ + $(TAO_ROOT)/tao/IORC.h \ + $(TAO_ROOT)/tao/IORC.i \ + $(TAO_ROOT)/tao/Interceptor.h \ + $(TAO_ROOT)/tao/InterceptorC.h \ + $(TAO_ROOT)/tao/IOPC.h \ + $(TAO_ROOT)/tao/CDR.h \ + $(TAO_ROOT)/tao/CDR.i \ + $(TAO_ROOT)/tao/IOPC.i \ + $(TAO_ROOT)/tao/InterceptorC.i \ + $(TAO_ROOT)/tao/Interceptor.i \ + $(TAO_ROOT)/tao/PolicyC.h \ + $(TAO_ROOT)/tao/CurrentC.h \ + $(TAO_ROOT)/tao/CurrentC.i \ + $(TAO_ROOT)/tao/Encodable.h \ + $(TAO_ROOT)/tao/Typecode.h \ + $(TAO_ROOT)/tao/Typecode.i \ + $(TAO_ROOT)/tao/PolicyC.i \ + $(TAO_ROOT)/tao/ORB.i \ + $(TAO_ROOT)/tao/Any.h \ + $(TAO_ROOT)/tao/Any.i \ + $(TAO_ROOT)/tao/NVList.h \ + $(TAO_ROOT)/tao/NVList.i \ + $(TAO_ROOT)/tao/Principal.h \ + $(TAO_ROOT)/tao/Principal.i \ + $(TAO_ROOT)/tao/Request.h \ + $(TAO_ROOT)/tao/Context.h \ + $(TAO_ROOT)/tao/Context.i \ + $(TAO_ROOT)/tao/MessagingC.h \ + $(TAO_ROOT)/tao/ValueBase.h \ + $(TAO_ROOT)/tao/ValueBase.i \ + $(TAO_ROOT)/tao/ValueFactory.h \ + $(TAO_ROOT)/tao/ValueFactory.i \ + $(TAO_ROOT)/tao/TimeBaseC.h \ + $(TAO_ROOT)/tao/TimeBaseC.i \ + $(TAO_ROOT)/tao/PollableC.h \ + $(TAO_ROOT)/tao/PollableC.i \ + $(TAO_ROOT)/tao/MessagingC.i \ + $(TAO_ROOT)/tao/Request.i \ + $(TAO_ROOT)/tao/Server_Request.h \ + $(TAO_ROOT)/tao/Object_KeyC.h \ + $(TAO_ROOT)/tao/Object_KeyC.i \ + $(TAO_ROOT)/tao/Server_Request.i \ + $(TAO_ROOT)/tao/POA.h \ + $(TAO_ROOT)/tao/Object_Adapter.h \ + $(TAO_ROOT)/tao/Key_Adapters.h \ + $(ACE_ROOT)/ace/Map.h \ + $(ACE_ROOT)/ace/Map_T.h \ + $(ACE_ROOT)/ace/Pair.h \ + $(ACE_ROOT)/ace/Pair_T.h \ + $(ACE_ROOT)/ace/Pair_T.i \ + $(ACE_ROOT)/ace/Pair_T.cpp \ + $(ACE_ROOT)/ace/Map_Manager.h \ + $(ACE_ROOT)/ace/Map_Manager.i \ + $(ACE_ROOT)/ace/Map_Manager.cpp \ + $(ACE_ROOT)/ace/Active_Map_Manager.h \ + $(ACE_ROOT)/ace/Active_Map_Manager.i \ + $(ACE_ROOT)/ace/Active_Map_Manager_T.h \ + $(ACE_ROOT)/ace/Active_Map_Manager_T.i \ + $(ACE_ROOT)/ace/Active_Map_Manager_T.cpp \ + $(ACE_ROOT)/ace/Map_T.i \ + $(ACE_ROOT)/ace/Map_T.cpp \ + $(TAO_ROOT)/tao/PortableServerC.h \ + $(TAO_ROOT)/tao/PortableServerC.i \ + $(TAO_ROOT)/tao/Key_Adapters.i \ + $(TAO_ROOT)/tao/Server_Strategy_Factory.h \ + $(TAO_ROOT)/tao/poa_macros.h \ + $(TAO_ROOT)/tao/Servant_Base.h \ + $(TAO_ROOT)/tao/Servant_Base.i \ + $(TAO_ROOT)/tao/Active_Object_Map.h \ + $(TAO_ROOT)/tao/Active_Object_Map.i \ + $(TAO_ROOT)/tao/RTCORBAC.h \ + $(TAO_ROOT)/tao/RTCORBAC.i \ + $(TAO_ROOT)/tao/Object_Adapter.i \ + $(TAO_ROOT)/tao/POAManager.h \ + $(TAO_ROOT)/tao/POAManager.i \ + $(TAO_ROOT)/tao/POA.i \ + $(TAO_ROOT)/tao/Stub.h \ + $(TAO_ROOT)/tao/Pluggable.h \ + $(ACE_ROOT)/ace/Message_Queue.h \ + $(ACE_ROOT)/ace/IO_Cntl_Msg.h \ + $(ACE_ROOT)/ace/Message_Queue_T.h \ + $(ACE_ROOT)/ace/Message_Queue_T.i \ + $(ACE_ROOT)/ace/Message_Queue_T.cpp \ + $(ACE_ROOT)/ace/Strategies.h \ + $(ACE_ROOT)/ace/Strategies_T.h \ + $(ACE_ROOT)/ace/Synch_Options.h \ + $(ACE_ROOT)/ace/Synch_Options.i \ + $(ACE_ROOT)/ace/Thread_Manager.h \ + $(ACE_ROOT)/ace/Thread_Manager.i \ + $(ACE_ROOT)/ace/Strategies_T.i \ + $(ACE_ROOT)/ace/Strategies_T.cpp \ + $(ACE_ROOT)/ace/Service_Repository.h \ + $(ACE_ROOT)/ace/Service_Types.h \ + $(ACE_ROOT)/ace/Service_Types.i \ + $(ACE_ROOT)/ace/Service_Repository.i \ + $(ACE_ROOT)/ace/WFMO_Reactor.h \ + $(ACE_ROOT)/ace/WFMO_Reactor.i \ + $(ACE_ROOT)/ace/Strategies.i \ + $(ACE_ROOT)/ace/Message_Queue.i \ + $(TAO_ROOT)/tao/Pluggable.i \ + $(TAO_ROOT)/tao/MProfile.h \ + $(TAO_ROOT)/tao/Profile.h \ + $(TAO_ROOT)/tao/Tagged_Components.h \ + $(TAO_ROOT)/tao/CONV_FRAMEC.h \ + $(TAO_ROOT)/tao/CONV_FRAMEC.i \ + $(TAO_ROOT)/tao/Tagged_Components.i \ + $(TAO_ROOT)/tao/Profile.i \ + $(TAO_ROOT)/tao/MProfile.i \ + $(TAO_ROOT)/tao/Stub.i \ + $(TAO_ROOT)/tao/params.h \ + $(TAO_ROOT)/tao/params.i \ + $(TAO_ROOT)/tao/ORB_Core.h \ + $(TAO_ROOT)/tao/Policy_Manager.h \ + $(TAO_ROOT)/tao/POA_CORBA.h \ + $(TAO_ROOT)/tao/DynAnyC.h \ + $(TAO_ROOT)/tao/DynAnyC.i \ + $(TAO_ROOT)/tao/DomainC.h \ + $(TAO_ROOT)/tao/DomainC.i \ + $(TAO_ROOT)/tao/Policy_Manager.i \ + $(TAO_ROOT)/tao/Resource_Factory.h \ + $(TAO_ROOT)/tao/Protocol_Factory.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.h \ + $(TAO_ROOT)/tao/TAO_Singleton_Manager.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.h \ + $(TAO_ROOT)/tao/TAO_Singleton.inl \ + $(TAO_ROOT)/tao/TAO_Singleton.cpp \ + $(TAO_ROOT)/tao/ORB_Core.i \ + $(ACE_ROOT)/ace/Dynamic_Service.h \ + $(ACE_ROOT)/ace/Dynamic_Service.cpp \ + $(TAO_ROOT)/tao/Operation_Table.h \ + $(TAO_ROOT)/tao/debug.h \ + $(TAO_ROOT)/tao/Client_Strategy_Factory.h \ + $(TAO_ROOT)/tao/Invocation.h \ + $(TAO_ROOT)/tao/Synch_Reply_Dispatcher.h \ + $(TAO_ROOT)/tao/Reply_Dispatcher.h \ + $(TAO_ROOT)/tao/Reply_Dispatcher.i \ + $(TAO_ROOT)/tao/GIOP_Message_State.h \ + $(TAO_ROOT)/tao/Pluggable_Messaging.h \ + $(TAO_ROOT)/tao/Pluggable_Messaging_Utils.h \ + $(TAO_ROOT)/tao/Pluggable_Messaging_Utils.i \ + $(TAO_ROOT)/tao/Pluggable_Messaging.i \ + $(TAO_ROOT)/tao/GIOP_Message_State.i \ + $(TAO_ROOT)/tao/Synch_Reply_Dispatcher.i \ + $(TAO_ROOT)/tao/TAOC.h \ + $(TAO_ROOT)/tao/Priority_Mapping_Manager.h \ + $(TAO_ROOT)/tao/Priority_Mapping.h \ + $(TAO_ROOT)/tao/Priority_Mapping.i \ + $(TAO_ROOT)/tao/Priority_Mapping_Manager.i \ + $(TAO_ROOT)/tao/TAOC.i \ + $(TAO_ROOT)/tao/operation_details.h \ + $(TAO_ROOT)/tao/target_specification.h \ + $(TAO_ROOT)/tao/target_specification.i \ + $(TAO_ROOT)/tao/operation_details.i \ + $(TAO_ROOT)/tao/Invocation.i \ + $(TAO_ROOT)/tao/InconsistentTypeCodeC.h \ + $(TAO_ROOT)/tao/DynAny_i.h \ + $(TAO_ROOT)/tao/ObjectIDList.h \ + $(TAO_ROOT)/tao/ObjectIDList.i \ + $(TAO_ROOT)/tao/WrongTransactionC.h \ + $(TAO_ROOT)/tao/InterfaceC.h \ + $(TAO_ROOT)/tao/ifrfwd.h \ + $(TAO_ROOT)/tao/BoundsC.h \ + $(TAO_ROOT)/tao/BoundsC.i \ + $(TAO_ROOT)/tao/MessagingS.h \ + $(TAO_ROOT)/tao/TimeBaseS.h \ + $(TAO_ROOT)/tao/TimeBaseS_T.h \ + $(TAO_ROOT)/tao/TimeBaseS_T.i \ + $(TAO_ROOT)/tao/TimeBaseS_T.cpp \ + $(TAO_ROOT)/tao/TimeBaseS.i \ + $(TAO_ROOT)/tao/MessagingS_T.h \ + $(TAO_ROOT)/tao/MessagingS_T.i \ + $(TAO_ROOT)/tao/MessagingS_T.cpp \ + $(TAO_ROOT)/tao/MessagingS.i \ + $(TAO_ROOT)/orbsvcs/orbsvcs/Naming/naming_export.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNamingC.i \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNotifyCommC.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/Notify/notify_export.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNotificationC.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNotificationC.i \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosEventCommC.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosEventCommC.i \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNotifyCommC.i \ + IdAssignment.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNotifyChannelAdminC.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNotifyFilterC.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNotifyFilterC.i \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosEventChannelAdminC.h \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosEventChannelAdminC.i \ + $(TAO_ROOT)/orbsvcs/orbsvcs/CosNotifyChannelAdminC.i + .obj/Updates.o .obj/Updates.so .shobj/Updates.o .shobj/Updates.so: Updates.cpp \ $(ACE_ROOT)/ace/Arg_Shifter.h \ $(ACE_ROOT)/ace/pre.h \ diff --git a/TAO/orbsvcs/tests/Notify/Basic/README b/TAO/orbsvcs/tests/Notify/Basic/README index fd45d4e69d0..76b86577efe 100644 --- a/TAO/orbsvcs/tests/Notify/Basic/README +++ b/TAO/orbsvcs/tests/Notify/Basic/README @@ -5,7 +5,38 @@ Updates: This test will check if the subscription and publication update messages from the event channel are properly received from the Notify Service. +Command line parameters: +"-updates <update_count>", + +where <update_count> is how many updates to send. + ConnectDisconnect: ----------------- Connects/Disconnects consumers and suppliers in a loop to test connect -and disconnect to admin objects.
\ No newline at end of file +and disconnect to admin objects. + +Command line parameters: + +"-count <testcount>", +"-consumers <number_of_consumers>", +"-suppliers <number_of_suppliers>", + +LifeCycleTest: +------------- +Creates and destroys EC and Admin objects. + +Command line parameters: +"-count testcount" + +where <testcount> is how many times we want to create/destroy. + +IdAssignment: +------------ +This test exercies Id generation by creating ec and admin objects and +using the assigned ids to lookup these objects and destroy them. + +Command line parameters: +"-iter <count>", count is how many times to repeat this test. +"-ec_count <count>", count is number of ec objects to create +"-ca_count <count>", count is number of consumer admin (ca) objects to create +"-sa_count <count>\n", count is number of supplier admin (sa) objects to create |