diff options
author | thrall <thrall@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-07-16 20:02:03 +0000 |
---|---|---|
committer | thrall <thrall@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-07-16 20:02:03 +0000 |
commit | fc76fe67d4270a94d647ae3054bf55ed65a757cc (patch) | |
tree | c1b91b2ef8f6ac163ed20b688b219b35115b3c81 | |
parent | 6b6e52eb390fda708468ff9eeafca2c61d3f2468 (diff) | |
download | ATCD-fc76fe67d4270a94d647ae3054bf55ed65a757cc.tar.gz |
Configure EC according to parsed XML
-rw-r--r-- | TAO/orbsvcs/tests/EC_Config/Test.cpp | 78 |
1 files changed, 28 insertions, 50 deletions
diff --git a/TAO/orbsvcs/tests/EC_Config/Test.cpp b/TAO/orbsvcs/tests/EC_Config/Test.cpp index 6a7d9ac0737..2941938a70b 100644 --- a/TAO/orbsvcs/tests/EC_Config/Test.cpp +++ b/TAO/orbsvcs/tests/EC_Config/Test.cpp @@ -14,8 +14,6 @@ using namespace TestConfig; -typedef ACE_Strong_Bound_Ptr<Test_Config_Set,ACE_Null_Mutex> TCFG_SET_SPTR; - //NOTE: Read from a formatted file rather than hardcode the configuration. Check ACE_XML. int @@ -49,12 +47,38 @@ main (int argc, char *argv[]) parser.parse(&is); ACEXML_TRY_CHECK; + ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Finished parsing\n"))); + // TODO configure according to parsed XML - //ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Finished parsing\n"))); + ConfigFactory::Default_Config_Factory fact; + fact.init(argc,argv); + + Test_Config *backend = fact.create_testconfig(); + if (0 == backend) { + ACE_DEBUG((LM_DEBUG, "Error: could not create back end!\n")); + return 1; + } + + // PROBLEM: occasional segfault on run and configure + TCFG_SET_WPTR cfg_ptr(handler.get_configs()); + + int retval = 0; + if ((retval = backend->configure(cfg_ptr)) != 0) { + ACE_DEBUG((LM_DEBUG, "Error configuring back end! (%d)\n",retval)); + return retval; + } + + if ((retval = backend->run()) != 0) { + ACE_DEBUG((LM_DEBUG, "Error running back end! (%d)\n",retval)); + return retval; + } + + fact.destroy_testconfig(backend); + fact.fini(); + } ACEXML_CATCH (ACEXML_SAXException, ex) { - //ACE_UNUSED_ARG (ex); ACE_DEBUG ((LM_ERROR, ACE_TEXT ("Exception occurred: %s. Exiting...\n"), ex.message())); return 1; @@ -63,51 +87,5 @@ main (int argc, char *argv[]) ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("Finished successfully\n"))); -#if 0 - ConfigFactory::Default_Config_Factory fact; - fact.init(argc,argv); - - Test_Config *backend = fact.create_testconfig(); - if (0 == backend) { - ACE_DEBUG((LM_DEBUG, "Error: could not create back end!\n")); - return 1; - } - - TCFG_SET_SPTR cfg_ptr(new Test_Config_Set(2)); - - (*cfg_ptr)[0] = new test_config_t(); - (*cfg_ptr)[0]->type = 0; - (*cfg_ptr)[0]->period = 1000; - (*cfg_ptr)[0]->criticality = HIGH_CRITICALITY; - (*cfg_ptr)[0]->importance = VERY_LOW_IMPORTANCE; - (*cfg_ptr)[0]->num_entities = 10; - - (*cfg_ptr)[1] = new test_config_t(); - (*cfg_ptr)[1]->type = 1; - (*cfg_ptr)[1]->period = 2000; - (*cfg_ptr)[1]->criticality = LOW_CRITICALITY; - (*cfg_ptr)[1]->importance = VERY_LOW_IMPORTANCE; - (*cfg_ptr)[1]->num_entities = 10; - - // PROBLEM: occasional segfault on run and configure - int retval = 0; - if ((retval = backend->configure(TCFG_SET_WPTR(cfg_ptr))) != 0) { - ACE_DEBUG((LM_DEBUG, "Error configuring back end! (%d)\n",retval)); - return retval; - } - - if ((retval = backend->run()) != 0) { - ACE_DEBUG((LM_DEBUG, "Error running back end! (%d)\n",retval)); - return retval; - } - - for(size_t i=0; i<cfg_ptr->size(); ++i) { - delete (*cfg_ptr)[i]; - } - - fact.destroy_testconfig(backend); - fact.fini(); -#endif /* 0 */ - return retval; } |