diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-07-01 15:46:23 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-07-01 15:46:23 +0000 |
commit | 34a97a5b1a079ac17b821ee8ebd4220a2c2e5c77 (patch) | |
tree | 1cb22906302b138fa8f5859f0e418e04831210d2 | |
parent | 3ccf6484cd0ae3b01c88a023cd49721dd0c789a1 (diff) | |
download | ATCD-34a97a5b1a079ac17b821ee8ebd4220a2c2e5c77.tar.gz |
ChangeLogTag:Thu Jul 1 10:45:24 1999 Carlos O'Ryan <coryan@cs.wustl.edu>
-rw-r--r-- | TAO/ChangeLog-99c | 13 | ||||
-rw-r--r-- | TAO/orbsvcs/Trading_Service/Trading_Service.cpp | 13 | ||||
-rw-r--r-- | TAO/orbsvcs/orbsvcs/Trader/Trader_Interfaces.cpp | 26 | ||||
-rwxr-xr-x | TAO/orbsvcs/tests/Trading/run_test.pl | 5 |
4 files changed, 40 insertions, 17 deletions
diff --git a/TAO/ChangeLog-99c b/TAO/ChangeLog-99c index d71764dea70..aa4e2d98b16 100644 --- a/TAO/ChangeLog-99c +++ b/TAO/ChangeLog-99c @@ -1,3 +1,16 @@ +Thu Jul 1 10:45:24 1999 Carlos O'Ryan <coryan@cs.wustl.edu> + + * orbsvcs/tests/Trading/run_test.pl: + The export_test must be shutdown using a signal, it does not + exit on its own. + + * orbsvcs/orbsvcs/Trader/Trader_Interfaces.cpp: + There was an error in the logic of the program, probably + introduced in the hectic activity to get exceptions to work. + + * orbsvcs/Trading_Service/Trading_Service.cpp: + The POA manager was not activated + Thu Jul 01 00:45:00 1999 Chris Gill <cdgill@cs.wustl.edu> * examples/Simulator/DOVEMIB/AnyAnalyser.cpp diff --git a/TAO/orbsvcs/Trading_Service/Trading_Service.cpp b/TAO/orbsvcs/Trading_Service/Trading_Service.cpp index a64ee6111c7..2baf5dda8b4 100644 --- a/TAO/orbsvcs/Trading_Service/Trading_Service.cpp +++ b/TAO/orbsvcs/Trading_Service/Trading_Service.cpp @@ -74,6 +74,9 @@ Trading_Service::init (int argc, char* argv[], CORBA::Environment &ACE_TRY_ENV) CORBA::ORB_ptr orb = this->orb_manager_.orb (); + this->orb_manager_.activate_poa_manager (ACE_TRY_ENV); + ACE_CHECK_RETURN (-1); + // Create a Trader Object and set its Service Type Repository. auto_ptr<TAO_Trader_Factory::TAO_TRADER> auto_trader (TAO_Trader_Factory::create_trader (argc, argv)); this->trader_ = auto_trader; @@ -288,22 +291,22 @@ Trading_Service::shutdown (void) CosTrading::Link::LinkInfo_var link_info = our_link->describe_link (link_name_seq[i], ACE_TRY_ENV); ACE_TRY_CHECK; - + ACE_DEBUG ((LM_DEBUG, "*** Removing link to %s.\n", ACE_static_cast (const char*, link_name_seq[i]))); our_link->remove_link (link_name_seq[i], ACE_TRY_ENV); ACE_TRY_CHECK; - + CosTrading::Lookup_ptr remote_lookup; remote_lookup = link_info->target.in (); - + ACE_DEBUG ((LM_DEBUG, "*** Retrieving its link interface.\n")); CosTrading::Link_var remote_link = remote_lookup->link_if (ACE_TRY_ENV); ACE_TRY_CHECK; - + ACE_DEBUG ((LM_DEBUG, "*** Removing its link to us.\n")); - + if (this->bootstrapper_) remote_link->remove_link ("Bootstrap", ACE_TRY_ENV); else diff --git a/TAO/orbsvcs/orbsvcs/Trader/Trader_Interfaces.cpp b/TAO/orbsvcs/orbsvcs/Trader/Trader_Interfaces.cpp index 721d521bfb8..332624a3ee4 100644 --- a/TAO/orbsvcs/orbsvcs/Trader/Trader_Interfaces.cpp +++ b/TAO/orbsvcs/orbsvcs/Trader/Trader_Interfaces.cpp @@ -1252,18 +1252,24 @@ validate_properties (const char* type, CosTradingRepos::ServiceTypeRepository::PROP_MANDATORY) ACE_THROW (CosTrading::MissingMandatoryProperty (type, prop_name)); } - int check = (! prop_type->equal (prop_struct.value_type.in (), ACE_TRY_ENV)); - ACE_CHECK; - if (check) + else { - // Offer cannot redefine the type of an property. - const CosTrading::Property* prop = prop_eval.get_property (prop_name); - ACE_THROW (CosTrading::PropertyTypeMismatch (type, *prop)); + int check = + (! prop_type->equal (prop_struct.value_type.in (), + ACE_TRY_ENV)); + ACE_CHECK; + if (check) + { + // Offer cannot redefine the type of an property. + const CosTrading::Property* prop = + prop_eval.get_property (prop_name); + ACE_THROW (CosTrading::PropertyTypeMismatch (type, *prop)); + } + else if (prop_struct.mode == + CosTradingRepos::ServiceTypeRepository::PROP_READONLY && + prop_eval.is_dynamic_property (prop_name)) + ACE_THROW (CosTrading::ReadonlyDynamicProperty (type, prop_name)); } - else if (prop_struct.mode == - CosTradingRepos::ServiceTypeRepository::PROP_READONLY && - prop_eval.is_dynamic_property (prop_name)) - ACE_THROW (CosTrading::ReadonlyDynamicProperty (type, prop_name)); } } diff --git a/TAO/orbsvcs/tests/Trading/run_test.pl b/TAO/orbsvcs/tests/Trading/run_test.pl index d7af3fc0d5f..e520d88327a 100755 --- a/TAO/orbsvcs/tests/Trading/run_test.pl +++ b/TAO/orbsvcs/tests/Trading/run_test.pl @@ -31,7 +31,7 @@ $E = Process::Create ($EXEPREFIX."export_test".$EXE_EXT, sleep $sleeptime; $I = Process::Create ($EXEPREFIX."import_test".$EXE_EXT, - "-ORBNameServiceIOR file://$ior"); + "-ORBTradingServiceIOR file://$ior"); if ($I->TimedWait (60) == -1) { $status = 1; @@ -39,7 +39,8 @@ if ($I->TimedWait (60) == -1) { $I->Kill (); $I->TimedWait (1); } -if ($E->TimedWait (60) == -1) { +$E->Terminate (); +if ($E->TimedWait (15) == -1) { $status =1; print STDERR "ERROR: export test timedout\n"; $E->Kill (); $E->TimedWait (1); |