summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/tests/Event/Basic/Shutdown.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/tests/Event/Basic/Shutdown.cpp')
-rw-r--r--TAO/orbsvcs/tests/Event/Basic/Shutdown.cpp89
1 files changed, 89 insertions, 0 deletions
diff --git a/TAO/orbsvcs/tests/Event/Basic/Shutdown.cpp b/TAO/orbsvcs/tests/Event/Basic/Shutdown.cpp
new file mode 100644
index 00000000000..ea2c18a1743
--- /dev/null
+++ b/TAO/orbsvcs/tests/Event/Basic/Shutdown.cpp
@@ -0,0 +1,89 @@
+// $Id$
+
+#include "Shutdown.h"
+#include "Consumer.h"
+#include "Supplier.h"
+
+ACE_RCSID(EC_Tests_Basic, Shutdown, "$Id$")
+
+int
+main (int argc, char *argv [])
+{
+ EC_Shutdown driver;
+ return driver.run (argc, 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));
+}