diff options
author | stanleyk <stanleyk@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2013-02-05 21:11:03 +0000 |
---|---|---|
committer | stanleyk <stanleyk@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2013-02-05 21:11:03 +0000 |
commit | 5e030faf84086ab02059fcbcc3faed224bd57b95 (patch) | |
tree | 3a62df45ac6ccf599fb07cf6a03d672456ce2e3d /TAO/tao/ORB_Core.cpp | |
parent | 9d296f7fa51116ff7040ecb2ad18612cd94b5fd1 (diff) | |
download | ATCD-5e030faf84086ab02059fcbcc3faed224bd57b95.tar.gz |
Merge in OCI_Reliability_Enhancements branch.
Diffstat (limited to 'TAO/tao/ORB_Core.cpp')
-rw-r--r-- | TAO/tao/ORB_Core.cpp | 57 |
1 files changed, 55 insertions, 2 deletions
diff --git a/TAO/tao/ORB_Core.cpp b/TAO/tao/ORB_Core.cpp index 6fa0711bba6..cdae1455171 100644 --- a/TAO/tao/ORB_Core.cpp +++ b/TAO/tao/ORB_Core.cpp @@ -1102,7 +1102,54 @@ TAO_ORB_Core::init (int &argc, char *argv[] ) arg_shifter.consume_arg (); } else if (0 != (current_arg = arg_shifter.get_the_parameter - (ACE_TEXT("-ORBForwardOnceOnObjectNotExist")))) + (ACE_TEXT("-ORBForwardOnTransientLimit")))) + { + int limit = ACE_OS::atoi (current_arg); + this->orb_params_.forward_on_exception_limit (TAO::FOE_TRANSIENT, limit); + arg_shifter.consume_arg (); + } + else if (0 != (current_arg = arg_shifter.get_the_parameter + (ACE_TEXT("-ORBForwardOnCommFailureLimit")))) + { + int limit = ACE_OS::atoi (current_arg); + this->orb_params_.forward_on_exception_limit ( + TAO::FOE_COMM_FAILURE, limit); + arg_shifter.consume_arg (); + } + else if (0 != (current_arg = arg_shifter.get_the_parameter + (ACE_TEXT("-ORBForwardOnObjectNotExistLimit")))) + { + int limit = ACE_OS::atoi (current_arg); + this->orb_params_.forward_on_exception_limit ( + TAO::FOE_OBJECT_NOT_EXIST, limit); + arg_shifter.consume_arg (); + } + else if (0 != (current_arg = arg_shifter.get_the_parameter + (ACE_TEXT("-ORBForwardOnInvObjrefLimit")))) + { + int limit = ACE_OS::atoi (current_arg); + this->orb_params_.forward_on_exception_limit ( + TAO::FOE_INV_OBJREF, limit); + arg_shifter.consume_arg (); + } + else if (0 != (current_arg = arg_shifter.get_the_parameter + (ACE_TEXT("-ORBForwardOnReplyClosedLimit")))) + { + int limit = ACE_OS::atoi (current_arg); + this->orb_params_.invocation_retry_params () + .forward_on_reply_closed_limit_ = limit; + arg_shifter.consume_arg (); + } + else if (0 != (current_arg = arg_shifter.get_the_parameter + (ACE_TEXT("-ORBForwardDelay")))) + { + int msecs = ACE_OS::atoi (current_arg); + ACE_Time_Value delay(0, 1000*msecs); + this->orb_params_.forward_on_exception_delay (delay); + arg_shifter.consume_arg (); + } + else if (0 != (current_arg = arg_shifter.get_the_parameter + (ACE_TEXT("-ORBForwardOnceOnObjectNotExist")))) { int forward = ACE_OS::atoi (current_arg); if (forward) @@ -1138,12 +1185,18 @@ TAO_ORB_Core::init (int &argc, char *argv[] ) arg_shifter.consume_arg (); } else if (0 != (current_arg = arg_shifter.get_the_parameter - (ACE_TEXT("-ORBAllowZIOPNoServerPolicies")))) + (ACE_TEXT("-ORBAllowZIOPNoServerPolicies")))) { // This option takes a boolean 0 (off/dissallow) or 1 (on/allow) this->orb_params_.allow_ziop_no_server_policies (!!ACE_OS::atoi (current_arg)); arg_shifter.consume_arg (); } + else if (0 != (current_arg = arg_shifter.get_the_parameter + (ACE_TEXT("-ORBDynamicThreadPoolName")))) + { + this->orb_params_.dynamic_thread_pool_config_name (current_arg); + arg_shifter.consume_arg (); + } //////////////////////////////////////////////////////////////// // catch any unknown -ORB args // |