diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/LoadBalancing/LB_LoadAverage.cpp')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/LoadBalancing/LB_LoadAverage.cpp | 115 |
1 files changed, 37 insertions, 78 deletions
diff --git a/TAO/orbsvcs/orbsvcs/LoadBalancing/LB_LoadAverage.cpp b/TAO/orbsvcs/orbsvcs/LoadBalancing/LB_LoadAverage.cpp index c6a0d0c3fa3..ca07c42fbc8 100644 --- a/TAO/orbsvcs/orbsvcs/LoadBalancing/LB_LoadAverage.cpp +++ b/TAO/orbsvcs/orbsvcs/LoadBalancing/LB_LoadAverage.cpp @@ -51,14 +51,14 @@ TAO_LB_LoadAverage::~TAO_LB_LoadAverage (void) } char * -TAO_LB_LoadAverage::name (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) +TAO_LB_LoadAverage::name (void) ACE_THROW_SPEC ((CORBA::SystemException)) { return CORBA::string_dup ("LoadAverage"); } CosLoadBalancing::Properties * -TAO_LB_LoadAverage::get_properties (ACE_ENV_SINGLE_ARG_DECL) +TAO_LB_LoadAverage::get_properties (void) ACE_THROW_SPEC ((CORBA::SystemException)) { CosLoadBalancing::Properties * props = 0; @@ -69,7 +69,6 @@ TAO_LB_LoadAverage::get_properties (ACE_ENV_SINGLE_ARG_DECL) TAO::VMCID, ENOMEM), CORBA::COMPLETED_NO)); - ACE_CHECK_RETURN (0); return props; } @@ -77,31 +76,28 @@ TAO_LB_LoadAverage::get_properties (ACE_ENV_SINGLE_ARG_DECL) void TAO_LB_LoadAverage::push_loads ( const PortableGroup::Location & the_location, - const CosLoadBalancing::LoadList & loads - ACE_ENV_ARG_DECL) + const CosLoadBalancing::LoadList & loads) ACE_THROW_SPEC ((CORBA::SystemException)) { // Only the first load is used by this load balancing strategy. if (loads.length () == 0) - ACE_THROW (CORBA::BAD_PARAM ()); + throw CORBA::BAD_PARAM (); CosLoadBalancing::Load load; // Unused this->push_loads (the_location, loads, - load - ACE_ENV_ARG_PARAMETER); + load); } void TAO_LB_LoadAverage::push_loads ( const PortableGroup::Location & the_location, const CosLoadBalancing::LoadList & loads, - CosLoadBalancing::Load & load - ACE_ENV_ARG_DECL) + CosLoadBalancing::Load & load) { if (loads.length () == 0) - ACE_THROW (CORBA::BAD_PARAM ()); + throw CORBA::BAD_PARAM (); // Only the first load is used by this load balancing strategy. const CosLoadBalancing::Load & new_load = loads[0]; @@ -116,7 +112,7 @@ TAO_LB_LoadAverage::push_loads ( CosLoadBalancing::Load & previous_load = entry->int_id_; if (previous_load.id != new_load.id) - ACE_THROW (CORBA::BAD_PARAM ()); // Somebody switched + throw CORBA::BAD_PARAM (); // Somebody switched // LoadIds on us! previous_load.value = @@ -139,7 +135,7 @@ TAO_LB_LoadAverage::push_loads ( "ERROR: TAO_LB_LoadAverage - " "Unable to push loads\n")); - ACE_THROW (CORBA::INTERNAL ()); + throw CORBA::INTERNAL (); } load = eff_load; @@ -154,8 +150,7 @@ TAO_LB_LoadAverage::push_loads ( CosLoadBalancing::LoadList * TAO_LB_LoadAverage::get_loads (CosLoadBalancing::LoadManager_ptr load_manager, - const PortableGroup::Location & the_location - ACE_ENV_ARG_DECL) + const PortableGroup::Location & the_location) ACE_THROW_SPEC ((CORBA::SystemException, CosLoadBalancing::LocationNotFound)) { @@ -163,15 +158,11 @@ TAO_LB_LoadAverage::get_loads (CosLoadBalancing::LoadManager_ptr load_manager, ACE_THROW_RETURN (CORBA::BAD_PARAM (), 0); CosLoadBalancing::LoadList_var loads = - load_manager->get_loads (the_location - ACE_ENV_ARG_PARAMETER); - ACE_CHECK_RETURN (0); + load_manager->get_loads (the_location); this->push_loads (the_location, loads.in (), - loads[0] - ACE_ENV_ARG_PARAMETER); - ACE_CHECK_RETURN (0); + loads[0]); return loads._retn (); } @@ -180,8 +171,7 @@ TAO_LB_LoadAverage::get_loads (CosLoadBalancing::LoadManager_ptr load_manager, CORBA::Object_ptr TAO_LB_LoadAverage::next_member ( PortableGroup::ObjectGroup_ptr object_group, - CosLoadBalancing::LoadManager_ptr load_manager - ACE_ENV_ARG_DECL) + CosLoadBalancing::LoadManager_ptr load_manager) ACE_THROW_SPEC ((CORBA::SystemException, PortableGroup::ObjectGroupNotFound, PortableGroup::MemberNotFound)) @@ -191,9 +181,7 @@ TAO_LB_LoadAverage::next_member ( CORBA::Object::_nil ()); PortableGroup::Locations_var locations = - load_manager->locations_of_members (object_group - ACE_ENV_ARG_PARAMETER); - ACE_CHECK_RETURN (CORBA::Object::_nil ()); + load_manager->locations_of_members (object_group); if (locations->length () == 0) ACE_THROW_RETURN (CORBA::TRANSIENT (), @@ -204,27 +192,23 @@ TAO_LB_LoadAverage::next_member ( return TAO_LB_Random::_tao_next_member (object_group, load_manager, - locations.in () - ACE_ENV_ARG_PARAMETER); + locations.in ()); } void TAO_LB_LoadAverage::analyze_loads ( PortableGroup::ObjectGroup_ptr object_group, - CosLoadBalancing::LoadManager_ptr load_manager - ACE_ENV_ARG_DECL) + CosLoadBalancing::LoadManager_ptr load_manager) ACE_THROW_SPEC ((CORBA::SystemException)) { if (CORBA::is_nil (load_manager)) - ACE_THROW (CORBA::BAD_PARAM ()); + throw CORBA::BAD_PARAM (); PortableGroup::Locations_var locations = - load_manager->locations_of_members (object_group - ACE_ENV_ARG_PARAMETER); - ACE_CHECK; + load_manager->locations_of_members (object_group); if (locations->length () == 0) - ACE_THROW (CORBA::TRANSIENT ()); + throw CORBA::TRANSIENT (); const CORBA::ULong len = locations->length (); @@ -238,7 +222,7 @@ TAO_LB_LoadAverage::analyze_loads ( // the average load of all the locations for (CORBA::ULong i = 0; i < len; ++i) { - ACE_TRY + try { const PortableGroup::Location & loc = locations[i]; @@ -246,16 +230,12 @@ TAO_LB_LoadAverage::analyze_loads ( // LoadManager and push it to this Strategy's load // processor. CosLoadBalancing::LoadList_var current_loads = - load_manager->get_loads (loc - ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK; + load_manager->get_loads (loc); CosLoadBalancing::Load load; this->push_loads (loc, current_loads.in (), - load - ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK; + load); // @@ Jai, please use the compound "+=" operator here. It // is more efficient in this case. @@ -269,13 +249,11 @@ TAO_LB_LoadAverage::analyze_loads ( total_load.value)); */ } - ACE_CATCH (CosLoadBalancing::LocationNotFound, ex) + catch (const CosLoadBalancing::LocationNotFound&) { // no location found // } - ACE_ENDTRY; - ACE_CHECK; } avg_load.value = total_load.value / len; @@ -289,7 +267,7 @@ TAO_LB_LoadAverage::analyze_loads ( // the location where the load has to be shed. for (CORBA::ULong j = 0; j < len; ++j) { - ACE_TRY_EX (SECOND) + try { const PortableGroup::Location & loc = locations[j]; @@ -303,9 +281,7 @@ TAO_LB_LoadAverage::analyze_loads ( if (tmp[j].value <= avg_load.value) { - load_manager->disable_alert (loc - ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK_EX (SECOND); + load_manager->disable_alert (loc); } else { @@ -333,9 +309,7 @@ TAO_LB_LoadAverage::analyze_loads ( // coding style. if (percent_diff <= TAO_LB::LA_DEFAULT_DIFF_AVERAGE_CUTOFF) { - load_manager->disable_alert (loc - ACE_ENV_ARG_PARAMETER); - ACE_TRY_CHECK_EX (SECOND); + load_manager->disable_alert (loc); } else if ((percent_diff > TAO_LB::LA_DEFAULT_DIFF_AVERAGE_CUTOFF) && (percent_diff < 1)) @@ -346,34 +320,29 @@ TAO_LB_LoadAverage::analyze_loads ( i)); */ - load_manager->enable_alert (loc - ACE_ENV_ARG_PARAMETER); + load_manager->enable_alert (loc); - ACE_TRY_CHECK_EX (SECOND); } } } - ACE_CATCH (CosLoadBalancing::LocationNotFound, ex) + catch (const CosLoadBalancing::LocationNotFound&) { // no location found // } - ACE_ENDTRY; - ACE_CHECK; } } PortableServer::POA_ptr -TAO_LB_LoadAverage::_default_POA (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) +TAO_LB_LoadAverage::_default_POA (void) { return PortableServer::POA::_duplicate (this->poa_.in ()); } void -TAO_LB_LoadAverage::init (const PortableGroup::Properties & props - ACE_ENV_ARG_DECL) +TAO_LB_LoadAverage::init (const PortableGroup::Properties & props) { CORBA::Float tolerance = TAO_LB::LA_DEFAULT_TOLERANCE; CORBA::Float dampening = TAO_LB::LA_DEFAULT_DAMPENING; @@ -387,37 +356,29 @@ TAO_LB_LoadAverage::init (const PortableGroup::Properties & props "org.omg.CosLoadBalancing.Strategy.LoadAverage.Tolerance") == 0) { this->extract_float_property (property, - tolerance - ACE_ENV_ARG_PARAMETER); - ACE_CHECK; + tolerance); // Valid tolerance values are greater than or equal to one. if (tolerance < 1) - ACE_THROW (PortableGroup::InvalidProperty (property.nam, - property.val)); + throw PortableGroup::InvalidProperty (property.nam, property.val); } else if (ACE_OS::strcmp (property.nam[0].id.in (), "org.omg.CosLoadBalancing.Strategy.LoadAverage.Dampening") == 0) { this->extract_float_property (property, - dampening - ACE_ENV_ARG_PARAMETER); - ACE_CHECK; + dampening); // Dampening range is [0,1). if (dampening < 0 || dampening >= 1) - ACE_THROW (PortableGroup::InvalidProperty (property.nam, - property.val)); + throw PortableGroup::InvalidProperty (property.nam, property.val); } else if (ACE_OS::strcmp (property.nam[0].id.in (), "org.omg.CosLoadBalancing.Strategy.LoadAverage.PerBalanceLoad") == 0) { this->extract_float_property (property, - per_balance_load - ACE_ENV_ARG_PARAMETER); - ACE_CHECK; + per_balance_load); } } @@ -443,12 +404,10 @@ TAO_LB_LoadAverage::init (const PortableGroup::Properties & props void TAO_LB_LoadAverage::extract_float_property ( const PortableGroup::Property & property, - CORBA::Float & value - ACE_ENV_ARG_DECL) + CORBA::Float & value) { if (!(property.val >>= value)) - ACE_THROW (PortableGroup::InvalidProperty (property.nam, - property.val)); + throw PortableGroup::InvalidProperty (property.nam, property.val); } TAO_END_VERSIONED_NAMESPACE_DECL |