// $Id$ #include "Shutdown.h" #include "Consumer.h" #include "Supplier.h" #include "ace/Argv_Type_Converter.h" ACE_RCSID(EC_Tests_Basic, Shutdown, "$Id$") int ACE_TMAIN (int argc, ACE_TCHAR *argv[]) { ACE_Argv_Type_Converter convert (argc, argv); EC_Shutdown driver; return driver.run (convert.get_argc(), convert.get_ASCII_argv()); } // **************************************************************** EC_Shutdown::EC_Shutdown (void) : consumer_disconnects_ (0), supplier_disconnects_ (0) { } void EC_Shutdown::execute_test (ACE_ENV_SINGLE_ARG_DECL) { if (this->verbose ()) ACE_DEBUG ((LM_DEBUG, "EC_Shutdown (%P|%t) destroying EC\n")); this->destroy_ec (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_CHECK; if (this->verbose ()) ACE_DEBUG ((LM_DEBUG, "EC_Shutdown (%P|%t) ec destroyed\n")); this->deactivate_ec (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_CHECK; if (this->verbose ()) ACE_DEBUG ((LM_DEBUG, "EC_Shutdown (%P|%t) ec deactivated\n")); this->cleanup_ec (); if (this->verbose ()) ACE_DEBUG ((LM_DEBUG, "EC_Shutdown (%P|%t) ec cleanup\n")); this->initialize_ec_impl (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_CHECK; this->connect_consumers (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_CHECK; this->connect_suppliers (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_CHECK; if (this->verbose ()) ACE_DEBUG ((LM_DEBUG, "EC_Shutdown (%P|%t) status reset\n")); // this->EC_Driver::execute_test (ACE_ENV_SINGLE_ARG_PARAMETER); } void EC_Shutdown::dump_results (void) { if (this->consumer_disconnects_ != this->n_consumers_) ACE_ERROR ((LM_ERROR, "Unexpected number (%d) of consumers disconnected\n", this->consumer_disconnects_)); if (this->supplier_disconnects_ != this->n_suppliers_) ACE_ERROR ((LM_ERROR, "Unexpected number (%d) of suppliers disconnected\n", this->supplier_disconnects_)); } void EC_Shutdown::consumer_disconnect (void* cookie ACE_ENV_ARG_DECL_NOT_USED) { this->consumer_disconnects_++; if (this->verbose ()) ACE_DEBUG ((LM_DEBUG, "Consumer %x has been disconnected\n", cookie)); } void EC_Shutdown::supplier_disconnect (void* cookie ACE_ENV_ARG_DECL_NOT_USED) { this->supplier_disconnects_++; if (this->verbose ()) ACE_DEBUG ((LM_DEBUG, "Supplier %x has been disconnected\n", cookie)); }