summaryrefslogtreecommitdiff
path: root/TAO/tao/CORBANAME_Parser.cpp
diff options
context:
space:
mode:
authorbala <balanatarajan@users.noreply.github.com>2000-11-16 03:53:40 +0000
committerbala <balanatarajan@users.noreply.github.com>2000-11-16 03:53:40 +0000
commit27e2b811c7b844e0a6f90e5492557f6174318c4c (patch)
tree1fa47022dfcae4335356caaf9e3f235437f5af2d /TAO/tao/CORBANAME_Parser.cpp
parenta4c04baea35f52d73649d628a6e66c2abf779a15 (diff)
downloadATCD-27e2b811c7b844e0a6f90e5492557f6174318c4c.tar.gz
ChangeLogTag: Wed Nov 15 21:35:17 2000 Balachandran Natarajan <bala@cs.wustl.edu>
Diffstat (limited to 'TAO/tao/CORBANAME_Parser.cpp')
-rw-r--r--TAO/tao/CORBANAME_Parser.cpp211
1 files changed, 106 insertions, 105 deletions
diff --git a/TAO/tao/CORBANAME_Parser.cpp b/TAO/tao/CORBANAME_Parser.cpp
index 19f8f7b975e..32e469f33cf 100644
--- a/TAO/tao/CORBANAME_Parser.cpp
+++ b/TAO/tao/CORBANAME_Parser.cpp
@@ -18,18 +18,18 @@ int
TAO_CORBANAME_Parser::match_prefix (const char *ior_string) const
{
return (ACE_OS::strncmp (ior_string,
- corbaname_prefix,
- sizeof corbaname_prefix - 1) == 0);
+ corbaname_prefix,
+ sizeof corbaname_prefix - 1) == 0);
}
CORBA::Object_ptr
TAO_CORBANAME_Parser::
parse_string_dynamic_request_helper (CORBA::Object_ptr naming_context,
- ACE_CString &key_string,
- CORBA::Environment &ACE_TRY_ENV)
+ ACE_CString &key_string,
+ CORBA::Environment &ACE_TRY_ENV)
ACE_THROW_SPEC ((CORBA::SystemException))
{
- CORBA::Object_ptr _tao_retval = CORBA::Object::_nil ();
+ CORBA::Object_ptr _tao_retval = CORBA::Object::_nil ();
CORBA::Object_var _tao_safe_retval (_tao_retval);
@@ -41,6 +41,7 @@ parse_string_dynamic_request_helper (CORBA::Object_ptr naming_context,
istub,
"resolve_str",
11,
+ 1,
istub->orb_core ()
);
@@ -49,157 +50,157 @@ parse_string_dynamic_request_helper (CORBA::Object_ptr naming_context,
_tao_call.start (ACE_TRY_ENV);
ACE_CHECK_RETURN (CORBA::Object::_nil ());
- CORBA::Short _tao_response_flag = TAO_TWOWAY_RESPONSE_FLAG;
+ CORBA::Short _tao_response_flag = TAO_TWOWAY_RESPONSE_FLAG;
_tao_call.prepare_header (
- ACE_static_cast (CORBA::Octet, _tao_response_flag),
- ACE_TRY_ENV
- );
+ ACE_static_cast (CORBA::Octet, _tao_response_flag),
+ ACE_TRY_ENV
+ );
ACE_CHECK_RETURN (CORBA::Object::_nil ());
- TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
+ TAO_OutputCDR &_tao_out = _tao_call.out_stream ();
if (!(
- (_tao_out << key_string.c_str ())
- ))
- ACE_THROW_RETURN (
- CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_NO),
- CORBA::Object::_nil ()
- );
+ (_tao_out << key_string.c_str ())
+ ))
+ ACE_THROW_RETURN (
+ CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_NO),
+ CORBA::Object::_nil ()
+ );
int _invoke_status = 0;
ACE_TRY
- {
- _invoke_status = _tao_call.invoke (0, 0, ACE_TRY_ENV);
- ACE_TRY_CHECK (CORBA::Object::_nil ());
- }
- ACE_CATCH (CORBA::UNKNOWN, ex)
- {
- ACE_UNUSED_ARG (ex);
-
- ACE_THROW_RETURN (
- CORBA::BAD_PARAM (TAO_OMG_VMCID | TAO_OMG_MINOR_BAD_PARAM_10,
- CORBA::COMPLETED_YES),
- CORBA::Object::_nil ()
- );
- }
+ {
+ _invoke_status = _tao_call.invoke (0, 0, ACE_TRY_ENV);
+ ACE_TRY_CHECK (CORBA::Object::_nil ());
+ }
+ ACE_CATCH (CORBA::UNKNOWN, ex)
+ {
+ ACE_UNUSED_ARG (ex);
+
+ ACE_THROW_RETURN (
+ CORBA::BAD_PARAM (TAO_OMG_VMCID | TAO_OMG_MINOR_BAD_PARAM_10,
+ CORBA::COMPLETED_YES),
+ CORBA::Object::_nil ()
+ );
+ }
ACE_ENDTRY;
ACE_CHECK_RETURN (CORBA::Object::_nil ());
if (_invoke_status == TAO_INVOKE_RESTART)
- {
- _tao_call.restart_flag (1);
- continue;
- }
+ {
+ _tao_call.restart_flag (1);
+ continue;
+ }
if (_invoke_status != TAO_INVOKE_OK)
- {
- // @@ Is there any way we can reach this point? Any
- // USER_EXCEPTION response will be caught by the UNKNOWN
- // catch block above. Any SYSTEM_EXCEPTION response will
- // be simply raised, and any RESTART is handled
- // already... leave this here "just in case".
- ACE_THROW_RETURN (
- CORBA::BAD_PARAM (TAO_OMG_VMCID | TAO_OMG_MINOR_BAD_PARAM_10,
- CORBA::COMPLETED_YES),
- CORBA::Object::_nil ()
- );
- }
+ {
+ // @@ Is there any way we can reach this point? Any
+ // USER_EXCEPTION response will be caught by the UNKNOWN
+ // catch block above. Any SYSTEM_EXCEPTION response will
+ // be simply raised, and any RESTART is handled
+ // already... leave this here "just in case".
+ ACE_THROW_RETURN (
+ CORBA::BAD_PARAM (TAO_OMG_VMCID | TAO_OMG_MINOR_BAD_PARAM_10,
+ CORBA::COMPLETED_YES),
+ CORBA::Object::_nil ()
+ );
+ }
TAO_InputCDR &_tao_in = _tao_call.inp_stream ();
if (!(
- (_tao_in >> _tao_safe_retval.inout ())
- ))
- {
- ACE_THROW_RETURN (
- CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES),
- CORBA::Object::_nil ()
- );
- }
+ (_tao_in >> _tao_safe_retval.inout ())
+ ))
+ {
+ ACE_THROW_RETURN (
+ CORBA::MARSHAL (TAO_DEFAULT_MINOR_CODE, CORBA::COMPLETED_YES),
+ CORBA::Object::_nil ()
+ );
+ }
break;
}
- return _tao_safe_retval._retn ();
+ return _tao_safe_retval._retn ();
}
CORBA::Object_ptr
TAO_CORBANAME_Parser::parse_string (const char *ior,
- CORBA::ORB_ptr orb,
- CORBA::Environment &ACE_TRY_ENV)
+ CORBA::ORB_ptr orb,
+ CORBA::Environment &ACE_TRY_ENV)
ACE_THROW_SPEC ((CORBA::SystemException))
{
// Skip the prefix, we know it is there because this method in only
// called if <match_prefix> returns 1.
- const char *corbaname =
- ior + sizeof corbaname_prefix - 1;
+ const char *corbaname =
+ ior + sizeof corbaname_prefix - 1;
- CORBA::Object_ptr obj = CORBA::Object::_nil ();
+ CORBA::Object_ptr obj = CORBA::Object::_nil ();
ACE_TRY
{
char rir_prot [] = "rir:";
- // The position of the seperator between the obj_addr and key
+ // The position of the seperator between the obj_addr and key
// string
CORBA::ULong pos_seperator = 0;
- ACE_CString corbaname_str (corbaname, 0, 1);
+ ACE_CString corbaname_str (corbaname, 0, 1);
pos_seperator = corbaname_str.find ("#", 0);
// Get the Key String
ACE_CString key_string =
- corbaname_str.substring (pos_seperator + 1,
- -1);
+ corbaname_str.substring (pos_seperator + 1,
+ -1);
- // Make it in a form understandable by <corbaloc> scheme
- ACE_CString corbaloc_addr ("corbaloc:", 0, 1);
+ // Make it in a form understandable by <corbaloc> scheme
+ ACE_CString corbaloc_addr ("corbaloc:", 0, 1);
if (ACE_OS::strncmp (corbaname,
- rir_prot,
- sizeof (rir_prot)) != 0)
- {
- // Implies that <iiop:> protocol is to be used.
- // So .. we need to get the host address where an object of
- // type NamingContext can be found.
- // Get the obj_addr
- ACE_CString obj_addr = corbaname_str.substring (0,
- pos_seperator);
+ rir_prot,
+ sizeof (rir_prot)) != 0)
+ {
+ // Implies that <iiop:> protocol is to be used.
+ // So .. we need to get the host address where an object of
+ // type NamingContext can be found.
+ // Get the obj_addr
+ ACE_CString obj_addr = corbaname_str.substring (0,
+ pos_seperator);
- corbaloc_addr += obj_addr;
+ corbaloc_addr += obj_addr;
- }
+ }
- ACE_CString name_service ("/NameService", 0, 1);
+ ACE_CString name_service ("/NameService", 0, 1);
corbaloc_addr += name_service;
- // Obtain a reference to the naming context
- CORBA::Object_var name_context =
- orb->string_to_object (corbaloc_addr.c_str (),
- ACE_TRY_ENV);
+ // Obtain a reference to the naming context
+ CORBA::Object_var name_context =
+ orb->string_to_object (corbaloc_addr.c_str (),
+ ACE_TRY_ENV);
ACE_TRY_CHECK;
// Check if the Object reference is nil.
- if (CORBA::is_nil (name_context.in ()))
- ACE_ERROR_RETURN ((LM_ERROR,
- "Cannot resolve Naming Service: CORBANAME_Parser\n"),
- 0);
+ if (CORBA::is_nil (name_context.in ()))
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot resolve Naming Service: CORBANAME_Parser\n"),
+ 0);
CORBA::Boolean is_a =
- name_context->_is_a ("IDL:omg.org/CosNaming/NamingContextExt:1.0",
- ACE_TRY_ENV);
+ name_context->_is_a ("IDL:omg.org/CosNaming/NamingContextExt:1.0",
+ ACE_TRY_ENV);
ACE_TRY_CHECK;
if (!is_a)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "Cannot narrow Naming Service: "
- "CORBANAME_Parser\n"),
- 0);
- }
-
- // Make a dynamic request for resolve_str in this naming context
+ {
+ ACE_ERROR_RETURN ((LM_ERROR,
+ "Cannot narrow Naming Service: "
+ "CORBANAME_Parser\n"),
+ 0);
+ }
+
+ // Make a dynamic request for resolve_str in this naming context
obj = this->parse_string_dynamic_request_helper (name_context.in (),
- key_string,
- ACE_TRY_ENV);
+ key_string,
+ ACE_TRY_ENV);
ACE_TRY_CHECK;
}
ACE_CATCH (CORBA::SystemException, ex)
@@ -207,18 +208,18 @@ TAO_CORBANAME_Parser::parse_string (const char *ior,
ACE_PRINT_EXCEPTION (ex, "CORBANAME_Parser");
}
ACE_ENDTRY;
- ACE_CHECK_RETURN (CORBA::Object::_nil ());
+ ACE_CHECK_RETURN (CORBA::Object::_nil ());
return obj;
}
ACE_STATIC_SVC_DEFINE (TAO_CORBANAME_Parser,
- ACE_TEXT ("CORBANAME_Parser"),
- ACE_SVC_OBJ_T,
- &ACE_SVC_NAME (TAO_CORBANAME_Parser),
- ACE_Service_Type::DELETE_THIS |
- ACE_Service_Type::DELETE_OBJ,
- 0)
+ ACE_TEXT ("CORBANAME_Parser"),
+ ACE_SVC_OBJ_T,
+ &ACE_SVC_NAME (TAO_CORBANAME_Parser),
+ ACE_Service_Type::DELETE_THIS |
+ ACE_Service_Type::DELETE_OBJ,
+ 0)
ACE_FACTORY_DEFINE (TAO, TAO_CORBANAME_Parser)