summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhil Mesnier <mesnier_p@ociweb.com>2011-03-22 21:47:57 +0000
committerPhil Mesnier <mesnier_p@ociweb.com>2011-03-22 21:47:57 +0000
commit3259338839446c90b07ade1e235ca2d5be5de1e0 (patch)
tree1dc4788fbb2d11768517f59d974108c443ef316f
parent2b3357feb95131407c7f94bd9108768c32841b12 (diff)
downloadATCD-3259338839446c90b07ade1e235ca2d5be5de1e0.tar.gz
Tue Mar 22 21:40:44 UTC 2011 Phil Mesnier <mesnier_p@ociweb.com>
* utils/catior/Catior_i.h: * utils/catior/Catior_i.cpp: Add the parsing of TAG_MULTIPLE_COMPONENTS which is still used by some ORBs. Also add the detection of ORB type JacORB to help with the identification of IORs in a heterogeneous environment.
-rw-r--r--TAO/ChangeLog9
-rw-r--r--TAO/utils/catior/Catior_i.cpp22
-rw-r--r--TAO/utils/catior/Catior_i.h3
3 files changed, 34 insertions, 0 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 95e95f0b8ef..b12f05b33a8 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,12 @@
+Tue Mar 22 21:40:44 UTC 2011 Phil Mesnier <mesnier_p@ociweb.com>
+
+ * utils/catior/Catior_i.h:
+ * utils/catior/Catior_i.cpp:
+
+ Add the parsing of TAG_MULTIPLE_COMPONENTS which is still used
+ by some ORBs. Also add the detection of ORB type JacORB to help
+ with the identification of IORs in a heterogeneous environment.
+
Tue Mar 22 14:31:19 UTC 2011 Adam Mitz <mitza@ociweb.com>
* tests/Bug_3942_Regression/Bug_3942_Regression.cpp:
diff --git a/TAO/utils/catior/Catior_i.cpp b/TAO/utils/catior/Catior_i.cpp
index c3fac2f0759..122363bf237 100644
--- a/TAO/utils/catior/Catior_i.cpp
+++ b/TAO/utils/catior/Catior_i.cpp
@@ -307,6 +307,10 @@ Catior_i::catior (char const * str)
{
continue_decoding = cat_iiop_profile (stream);
}
+ else if (tag == IOP::TAG_MULTIPLE_COMPONENTS)
+ {
+ continue_decoding = cat_multiple_components (stream);
+ }
else if (tag == TAO_TAG_SCIOP_PROFILE)
{
continue_decoding = cat_sciop_profile (stream);
@@ -540,6 +544,12 @@ Catior_i::cat_tag_orb_type (TAO_InputCDR& stream) {
"ORB Type: 0x%x (TIDorbC++)\n", orbtype);
break;
}
+ case 0x4a414300:
+ {
+ ACE_OS::snprintf (buf, bufsize,
+ "ORB Type: 0x%x (JacORB)\n", orbtype);
+ break;
+ }
default:
{
ACE_OS::snprintf (buf, bufsize,
@@ -1492,6 +1502,18 @@ Catior_i::cat_uiop_profile (TAO_InputCDR& stream)
}
CORBA::Boolean
+Catior_i::cat_multiple_components (TAO_InputCDR& stream)
+{
+ static const size_t bufsize = 512;
+ char buf[bufsize];
+
+ ACE_OS::snprintf (buf, bufsize,
+ "Multiple Components Profile\n");
+ buffer_ += buf;
+ return cat_tagged_components (stream);
+}
+
+CORBA::Boolean
Catior_i::cat_sciop_profile (TAO_InputCDR& stream)
{
// OK, we've got an SCIOP profile.
diff --git a/TAO/utils/catior/Catior_i.h b/TAO/utils/catior/Catior_i.h
index 9b7efea6c5e..c3750189c26 100644
--- a/TAO/utils/catior/Catior_i.h
+++ b/TAO/utils/catior/Catior_i.h
@@ -44,6 +44,7 @@ private:
// These methods used to be functions in catior.cpp
CORBA::Boolean catiiop (char* string);
+
CORBA::Boolean catior (char const* str);
CORBA::Boolean catpoop (char* string);
@@ -75,6 +76,8 @@ private:
CORBA::Boolean cat_tagged_components (TAO_InputCDR& stream);
+ CORBA::Boolean cat_multiple_components (TAO_InputCDR& stream);
+
CORBA::Boolean cat_profile_helper (TAO_InputCDR& stream,
const char* protocol);