diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/FaultTolerance/FT_ServerRequest_Interceptor.cpp')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/FaultTolerance/FT_ServerRequest_Interceptor.cpp | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/TAO/orbsvcs/orbsvcs/FaultTolerance/FT_ServerRequest_Interceptor.cpp b/TAO/orbsvcs/orbsvcs/FaultTolerance/FT_ServerRequest_Interceptor.cpp index 64866cc36ed..f082c613dd9 100644 --- a/TAO/orbsvcs/orbsvcs/FaultTolerance/FT_ServerRequest_Interceptor.cpp +++ b/TAO/orbsvcs/orbsvcs/FaultTolerance/FT_ServerRequest_Interceptor.cpp @@ -1,4 +1,6 @@ -#include "orbsvcs/FaultTolerance/FT_ServerRequest_Interceptor.h" +// -*- C++ -*- + +#include "FT_ServerRequest_Interceptor.h" #include "tao/IOP_IORC.h" #include "tao/ORB_Constants.h" #include "tao/AnyTypeCode/DynamicC.h" @@ -12,8 +14,6 @@ ACE_RCSID (FaultTolerance, FT_ServerRequest_Interceptor, "$Id$") -TAO_BEGIN_VERSIONED_NAMESPACE_DECL - namespace TAO { FT_ServerRequest_Interceptor::FT_ServerRequest_Interceptor (void) @@ -28,6 +28,7 @@ namespace TAO { } + char * FT_ServerRequest_Interceptor::name (ACE_ENV_SINGLE_ARG_DECL_NOT_USED) ACE_THROW_SPEC ((CORBA::SystemException)) @@ -206,17 +207,16 @@ namespace TAO ri->arguments (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_CHECK; - // this is only for checking the tao_update_object_group operation - // which accepts three parameters, i.e.,an iogr as a string, - // a version object and a boolean. - if (param->length () != 3 ) + if (param->length () > 2 || + param->length () == 0) ACE_THROW (CORBA::TRANSIENT ()); + const char *str = 0; + (*param)[0].argument >>= str; (*param)[1].argument >>= this->object_group_ref_version_; - (*param)[2].argument >>= CORBA::Any::to_boolean(this->is_primary_); CORBA::String_var obj (str); @@ -233,5 +233,3 @@ namespace TAO ACE_THROW (CORBA::TRANSACTION_ROLLEDBACK ()); } } - -TAO_END_VERSIONED_NAMESPACE_DECL |