summaryrefslogtreecommitdiff
path: root/TAO
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-02-22 02:26:11 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-02-22 02:26:11 +0000
commit66b68f6aaa7a0b9b167a014a656e30ad2ac52ce5 (patch)
treeb9216c075f090465832b7b5749e29ca2b37bafbe /TAO
parentef8ff8760c001c2a95ed9130edfc3af5c2eca73a (diff)
downloadATCD-66b68f6aaa7a0b9b167a014a656e30ad2ac52ce5.tar.gz
Optimization of oneway, twoway and ami calls.
Diffstat (limited to 'TAO')
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp6
-rw-r--r--TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp9
-rw-r--r--TAO/tao/Asynch_Invocation.h1
-rw-r--r--TAO/tao/Asynch_Invocation.i3
-rw-r--r--TAO/tao/DomainC.cpp2
-rw-r--r--TAO/tao/GIOP.cpp9
-rw-r--r--TAO/tao/GIOP.h3
-rw-r--r--TAO/tao/ImplRepoC.cpp13
-rw-r--r--TAO/tao/InterfaceC.cpp120
-rw-r--r--TAO/tao/Invocation.cpp6
-rw-r--r--TAO/tao/Invocation.h6
-rw-r--r--TAO/tao/Invocation.i5
-rw-r--r--TAO/tao/MessagingC.cpp7
-rw-r--r--TAO/tao/Object.cpp5
-rw-r--r--TAO/tao/POAC.cpp8
-rw-r--r--TAO/tao/PolicyC.cpp3
-rw-r--r--TAO/tao/PollableC.cpp7
-rw-r--r--TAO/tao/Stub.cpp10
18 files changed, 214 insertions, 9 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp b/TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp
index 4bcd936337d..ef715fc0add 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp
@@ -401,6 +401,8 @@ be_compiled_visitor_operation_ami_cs::gen_marshal_and_invoke (be_operation *node
*os << "\"";
+ size_t ext = 0;
+
if (this->ctx_->attribute ())
{
// now check if we are a "get" or "set" operation
@@ -408,10 +410,14 @@ be_compiled_visitor_operation_ami_cs::gen_marshal_and_invoke (be_operation *node
*os << "_set_";
else
*os << "_get_";
+
+ ext += 5;
}
*os << node->local_name ()
<< "\"," << be_nl
+ << ACE_OS::strlen (node->original_local_name ()->get_string ()) + ext
+ << "," << be_nl
<< "istub->orb_core ()," << be_nl;
// Next argument is the reply handler skeleton for this method.
diff --git a/TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp b/TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp
index bc362961894..1fc5ca97e3d 100644
--- a/TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_operation/operation_cs.cpp
@@ -744,17 +744,24 @@ be_compiled_visitor_operation_cs::gen_marshal_and_invoke (be_operation
default:
*os << "TAO_GIOP_Twoway_Invocation _tao_call ";
}
+
+ // Do we have "_set_" or "_get_" prepended?
+ size_t ext = this->ctx_->attribute () ? 5 : 0;
+
*os << "(" << be_idt << be_idt_nl
<< "istub," << be_nl
<< this->compute_operation_name (node)
<< "," << be_nl
+ << ACE_OS::strlen (node->original_local_name ()->get_string ()) + ext
+ << "," << be_nl
<< "istub->orb_core ()" << be_uidt_nl
<< ");\n";
// fish out the interceptor from the ORB
*os << "\n#if defined (TAO_HAS_INTERCEPTORS)" << be_nl
<< "TAO_ClientRequestInterceptor_Adapter" << be_idt_nl
- << "_tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));\n" << be_uidt;;
+ << "_tao_vfr (istub->orb_core ()->orb ()->_get_client_interceptor (ACE_TRY_ENV));\n"
+ << be_uidt;
if (this->gen_check_exception (bt) == -1)
{
ACE_ERROR_RETURN ((LM_ERROR,
diff --git a/TAO/tao/Asynch_Invocation.h b/TAO/tao/Asynch_Invocation.h
index 51754a07423..1112d7b783b 100644
--- a/TAO/tao/Asynch_Invocation.h
+++ b/TAO/tao/Asynch_Invocation.h
@@ -46,6 +46,7 @@ class TAO_Export TAO_GIOP_Twoway_Asynch_Invocation : public TAO_GIOP_Invocation
public:
TAO_GIOP_Twoway_Asynch_Invocation (TAO_Stub *data,
const char *operation,
+ CORBA::ULong opname_len_,
TAO_ORB_Core* orb_core,
const TAO_Reply_Handler_Skeleton &reply_handler_skel,
Messaging::ReplyHandler_ptr reply_handler_ptr);
diff --git a/TAO/tao/Asynch_Invocation.i b/TAO/tao/Asynch_Invocation.i
index f00ce65d269..d11828e3b6b 100644
--- a/TAO/tao/Asynch_Invocation.i
+++ b/TAO/tao/Asynch_Invocation.i
@@ -11,11 +11,13 @@ ACE_INLINE
TAO_GIOP_Twoway_Asynch_Invocation::
TAO_GIOP_Twoway_Asynch_Invocation (TAO_Stub *stub,
const char *operation,
+ CORBA::ULong opname_len,
TAO_ORB_Core *orb_core,
const TAO_Reply_Handler_Skeleton &reply_handler_skel,
Messaging::ReplyHandler_ptr reply_handler_ptr)
: TAO_GIOP_Invocation (stub,
operation,
+ opname_len,
orb_core),
rd_ (0)
{
@@ -44,6 +46,7 @@ TAO_GIOP_DII_Deferred_Invocation (TAO_Stub *stub,
const CORBA::Request_ptr req)
: TAO_GIOP_Invocation (stub,
req->operation (),
+ ACE_OS::strlen (req->operation ()),
orb_core),
rd_ (0)
{
diff --git a/TAO/tao/DomainC.cpp b/TAO/tao/DomainC.cpp
index 5082b2d43b6..189754e6493 100644
--- a/TAO/tao/DomainC.cpp
+++ b/TAO/tao/DomainC.cpp
@@ -107,6 +107,7 @@ CORBA::Policy_ptr CORBA_DomainManager::get_domain_policy (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"get_domain_policy",
+ 17,
istub->orb_core ()
);
@@ -242,6 +243,7 @@ void CORBA::ConstructionPolicy::make_domain_manager (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"make_domain_manager",
+ 19,
istub->orb_core ()
);
diff --git a/TAO/tao/GIOP.cpp b/TAO/tao/GIOP.cpp
index 0bc2af9ed2f..66dea8c3130 100644
--- a/TAO/tao/GIOP.cpp
+++ b/TAO/tao/GIOP.cpp
@@ -345,6 +345,7 @@ TAO_GIOP::write_request_header (const IOP::ServiceContextList& svc_ctx,
CORBA::Octet response_flags,
const TAO_opaque& key,
const char *opname,
+ CORBA::ULong opname_len,
CORBA::Principal_ptr principal,
TAO_OutputCDR &msg,
TAO_ORB_Core *orb_core)
@@ -355,6 +356,7 @@ TAO_GIOP::write_request_header (const IOP::ServiceContextList& svc_ctx,
response_flags,
key,
opname,
+ opname_len,
principal,
msg);
else
@@ -363,6 +365,7 @@ TAO_GIOP::write_request_header (const IOP::ServiceContextList& svc_ctx,
response_flags,
key,
opname,
+ opname_len,
principal,
msg);
}
@@ -1516,6 +1519,7 @@ TAO_GIOP::write_request_header_std (const IOP::ServiceContextList &svc_ctx,
CORBA::Octet response_flags,
const TAO_opaque &key,
const char *opname,
+ CORBA::ULong opname_len,
CORBA::Principal_ptr principal,
TAO_OutputCDR &out_stream)
{
@@ -1549,7 +1553,7 @@ TAO_GIOP::write_request_header_std (const IOP::ServiceContextList &svc_ctx,
return 0;
out_stream << key;
- out_stream << opname;
+ out_stream.write_string (opname_len, opname);
out_stream << principal;
return 1;
}
@@ -1560,6 +1564,7 @@ TAO_GIOP::write_request_header_lite (const IOP::ServiceContextList &,
CORBA::Octet response_flags,
const TAO_opaque &key,
const char *opname,
+ CORBA::ULong opname_len,
CORBA::Principal_ptr,
TAO_OutputCDR &out_stream)
{
@@ -1592,7 +1597,7 @@ TAO_GIOP::write_request_header_lite (const IOP::ServiceContextList &,
return 0;
out_stream << key;
- out_stream << opname;
+ out_stream.write_string (opname_len, opname);
return 1;
}
diff --git a/TAO/tao/GIOP.h b/TAO/tao/GIOP.h
index 2c9545c6bd0..a5e618191d6 100644
--- a/TAO/tao/GIOP.h
+++ b/TAO/tao/GIOP.h
@@ -422,6 +422,7 @@ public:
CORBA::Octet response_flags,
const TAO_opaque& key,
const char* opname,
+ CORBA::ULong opname_len,
CORBA::Principal_ptr principal,
TAO_OutputCDR &msg,
TAO_ORB_Core *orb_core);
@@ -537,6 +538,7 @@ private:
CORBA::Octet response_flags,
const TAO_opaque& key,
const char* opname,
+ CORBA::ULong opname_len,
CORBA::Principal_ptr principal,
TAO_OutputCDR &msg);
// Encode the standard header for the Request, assuming that the
@@ -547,6 +549,7 @@ private:
CORBA::Octet response_flags,
const TAO_opaque& key,
const char* opname,
+ CORBA::ULong opname_len,
CORBA::Principal_ptr principal,
TAO_OutputCDR &msg);
// Encode the light weight header for the Request, assuming that the
diff --git a/TAO/tao/ImplRepoC.cpp b/TAO/tao/ImplRepoC.cpp
index 3419c7825af..2bbf1fa7da7 100644
--- a/TAO/tao/ImplRepoC.cpp
+++ b/TAO/tao/ImplRepoC.cpp
@@ -73,6 +73,7 @@ void ImplementationRepository::ServerObject::ping (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"ping",
+ 4,
istub->orb_core ()
);
@@ -181,6 +182,7 @@ void ImplementationRepository::ServerObject::shutdown (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"shutdown",
+ 8,
istub->orb_core ()
);
@@ -1166,6 +1168,7 @@ void ImplementationRepository::Administration::activate_server (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"activate_server",
+ 15,
istub->orb_core ()
);
@@ -1287,6 +1290,7 @@ void ImplementationRepository::Administration::register_server (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"register_server",
+ 15,
istub->orb_core ()
);
@@ -1403,6 +1407,7 @@ void ImplementationRepository::Administration::reregister_server (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"reregister_server",
+ 17,
istub->orb_core ()
);
@@ -1524,6 +1529,7 @@ void ImplementationRepository::Administration::remove_server (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"remove_server",
+ 13,
istub->orb_core ()
);
@@ -1644,6 +1650,7 @@ void ImplementationRepository::Administration::shutdown_server (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"shutdown_server",
+ 15,
istub->orb_core ()
);
@@ -1766,6 +1773,7 @@ char * ImplementationRepository::Administration::server_is_running (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"server_is_running",
+ 17,
istub->orb_core ()
);
@@ -1895,6 +1903,7 @@ void ImplementationRepository::Administration::server_is_shutting_down (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"server_is_shutting_down",
+ 23,
istub->orb_core ()
);
@@ -2017,6 +2026,7 @@ void ImplementationRepository::Administration::find (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"find",
+ 4,
istub->orb_core ()
);
@@ -2138,6 +2148,7 @@ void ImplementationRepository::Administration::list (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"list",
+ 4,
istub->orb_core ()
);
@@ -2585,6 +2596,7 @@ CORBA::Boolean ImplementationRepository::ServerInformationIterator::next_n (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"next_n",
+ 6,
istub->orb_core ()
);
@@ -2706,6 +2718,7 @@ void ImplementationRepository::ServerInformationIterator::destroy (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"destroy",
+ 7,
istub->orb_core ()
);
diff --git a/TAO/tao/InterfaceC.cpp b/TAO/tao/InterfaceC.cpp
index 1849ed31dae..d77fe4923a0 100644
--- a/TAO/tao/InterfaceC.cpp
+++ b/TAO/tao/InterfaceC.cpp
@@ -154,6 +154,7 @@ CORBA::DefinitionKind CORBA_IRObject::def_kind (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""def_kind",
+ 13,
istub->orb_core ()
);
@@ -212,6 +213,7 @@ void CORBA_IRObject::destroy (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"destroy",
+ 7,
istub->orb_core ()
);
@@ -351,6 +353,7 @@ char * CORBA_Contained::id (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""id",
+ 7,
istub->orb_core ()
);
@@ -410,6 +413,7 @@ void CORBA_Contained::id (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""id",
+ 7,
istub->orb_core ()
);
@@ -469,6 +473,7 @@ char * CORBA_Contained::name (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""name",
+ 9,
istub->orb_core ()
);
@@ -528,6 +533,7 @@ void CORBA_Contained::name (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""name",
+ 9,
istub->orb_core ()
);
@@ -587,6 +593,7 @@ char * CORBA_Contained::version (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""version",
+ 12,
istub->orb_core ()
);
@@ -646,6 +653,7 @@ void CORBA_Contained::version (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""version",
+ 12,
istub->orb_core ()
);
@@ -705,6 +713,7 @@ CORBA_Container_ptr CORBA_Contained::defined_in (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""defined_in",
+ 15,
istub->orb_core ()
);
@@ -763,6 +772,7 @@ char * CORBA_Contained::absolute_name (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""absolute_name",
+ 18,
istub->orb_core ()
);
@@ -821,6 +831,7 @@ CORBA_Repository_ptr CORBA_Contained::containing_repository (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""containing_repository",
+ 26,
istub->orb_core ()
);
@@ -924,6 +935,7 @@ CORBA_Contained::Description * CORBA_Contained::describe (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"describe",
+ 8,
istub->orb_core ()
);
@@ -985,6 +997,7 @@ void CORBA_Contained::move (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"move",
+ 4,
istub->orb_core ()
);
@@ -2165,6 +2178,7 @@ CORBA_Contained_ptr CORBA_Container::lookup (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"lookup",
+ 6,
istub->orb_core ()
);
@@ -2232,6 +2246,7 @@ CORBA_ContainedSeq * CORBA_Container::contents (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"contents",
+ 8,
istub->orb_core ()
);
@@ -2302,6 +2317,7 @@ CORBA_ContainedSeq * CORBA_Container::lookup_name (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"lookup_name",
+ 11,
istub->orb_core ()
);
@@ -2579,6 +2595,7 @@ CORBA_Container::DescriptionSeq * CORBA_Container::describe_contents (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"describe_contents",
+ 17,
istub->orb_core ()
);
@@ -2648,6 +2665,7 @@ CORBA_ModuleDef_ptr CORBA_Container::create_module (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_module",
+ 13,
istub->orb_core ()
);
@@ -2719,6 +2737,7 @@ CORBA_ConstantDef_ptr CORBA_Container::create_constant (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_constant",
+ 15,
istub->orb_core ()
);
@@ -2791,6 +2810,7 @@ CORBA_StructDef_ptr CORBA_Container::create_struct (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_struct",
+ 13,
istub->orb_core ()
);
@@ -2863,6 +2883,7 @@ CORBA_UnionDef_ptr CORBA_Container::create_union (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_union",
+ 12,
istub->orb_core ()
);
@@ -2935,6 +2956,7 @@ CORBA_EnumDef_ptr CORBA_Container::create_enum (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_enum",
+ 11,
istub->orb_core ()
);
@@ -3006,6 +3028,7 @@ CORBA_AliasDef_ptr CORBA_Container::create_alias (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_alias",
+ 12,
istub->orb_core ()
);
@@ -3077,6 +3100,7 @@ CORBA_InterfaceDef_ptr CORBA_Container::create_interface (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_interface",
+ 16,
istub->orb_core ()
);
@@ -3154,6 +3178,7 @@ CORBA_ValueDef_ptr CORBA_Container::create_value (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_value",
+ 12,
istub->orb_core ()
);
@@ -3231,6 +3256,7 @@ CORBA_ValueBoxDef_ptr CORBA_Container::create_value_box (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_value_box",
+ 16,
istub->orb_core ()
);
@@ -3302,6 +3328,7 @@ CORBA_ExceptionDef_ptr CORBA_Container::create_exception (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_exception",
+ 16,
istub->orb_core ()
);
@@ -3443,6 +3470,7 @@ CORBA::TypeCode_ptr CORBA_IDLType::type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""type",
+ 9,
istub->orb_core ()
);
@@ -3609,6 +3637,7 @@ CORBA_Contained_ptr CORBA_Repository::lookup_id (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"lookup_id",
+ 9,
istub->orb_core ()
);
@@ -3674,6 +3703,7 @@ CORBA_PrimitiveDef_ptr CORBA_Repository::get_primitive (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"get_primitive",
+ 13,
istub->orb_core ()
);
@@ -3739,6 +3769,7 @@ CORBA_StringDef_ptr CORBA_Repository::create_string (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_string",
+ 13,
istub->orb_core ()
);
@@ -3804,6 +3835,7 @@ CORBA_WstringDef_ptr CORBA_Repository::create_wstring (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_wstring",
+ 14,
istub->orb_core ()
);
@@ -3870,6 +3902,7 @@ CORBA_SequenceDef_ptr CORBA_Repository::create_sequence (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_sequence",
+ 15,
istub->orb_core ()
);
@@ -3937,6 +3970,7 @@ CORBA_ArrayDef_ptr CORBA_Repository::create_array (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_array",
+ 12,
istub->orb_core ()
);
@@ -4004,6 +4038,7 @@ CORBA_FixedDef_ptr CORBA_Repository::create_fixed (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_fixed",
+ 12,
istub->orb_core ()
);
@@ -4268,6 +4303,7 @@ CORBA::TypeCode_ptr CORBA_ConstantDef::type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""type",
+ 9,
istub->orb_core ()
);
@@ -4326,6 +4362,7 @@ CORBA_IDLType_ptr CORBA_ConstantDef::type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""type_def",
+ 13,
istub->orb_core ()
);
@@ -4385,6 +4422,7 @@ void CORBA_ConstantDef::type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""type_def",
+ 13,
istub->orb_core ()
);
@@ -4445,6 +4483,7 @@ CORBA_Any * CORBA_ConstantDef::value (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""value",
+ 10,
istub->orb_core ()
);
@@ -4504,6 +4543,7 @@ void CORBA_ConstantDef::value (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""value",
+ 10,
istub->orb_core ()
);
@@ -4820,6 +4860,7 @@ CORBA_StructMemberSeq * CORBA_StructDef::members (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""members",
+ 12,
istub->orb_core ()
);
@@ -4879,6 +4920,7 @@ void CORBA_StructDef::members (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""members",
+ 12,
istub->orb_core ()
);
@@ -5016,6 +5058,7 @@ CORBA::TypeCode_ptr CORBA_UnionDef::discriminator_type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""discriminator_type",
+ 23,
istub->orb_core ()
);
@@ -5074,6 +5117,7 @@ CORBA_IDLType_ptr CORBA_UnionDef::discriminator_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""discriminator_type_def",
+ 27,
istub->orb_core ()
);
@@ -5133,6 +5177,7 @@ void CORBA_UnionDef::discriminator_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""discriminator_type_def",
+ 27,
istub->orb_core ()
);
@@ -5193,6 +5238,7 @@ CORBA_UnionMemberSeq * CORBA_UnionDef::members (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""members",
+ 12,
istub->orb_core ()
);
@@ -5252,6 +5298,7 @@ void CORBA_UnionDef::members (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""members",
+ 12,
istub->orb_core ()
);
@@ -5390,6 +5437,7 @@ CORBA_EnumMemberSeq * CORBA_EnumDef::members (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""members",
+ 12,
istub->orb_core ()
);
@@ -5449,6 +5497,7 @@ void CORBA_EnumDef::members (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""members",
+ 12,
istub->orb_core ()
);
@@ -5585,6 +5634,7 @@ CORBA_IDLType_ptr CORBA_AliasDef::original_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""original_type_def",
+ 22,
istub->orb_core ()
);
@@ -5644,6 +5694,7 @@ void CORBA_AliasDef::original_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""original_type_def",
+ 22,
istub->orb_core ()
);
@@ -5780,6 +5831,7 @@ CORBA::PrimitiveKind CORBA_PrimitiveDef::kind (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""kind",
+ 9,
istub->orb_core ()
);
@@ -5913,6 +5965,7 @@ CORBA::ULong CORBA_StringDef::bound (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""bound",
+ 10,
istub->orb_core ()
);
@@ -5972,6 +6025,7 @@ void CORBA_StringDef::bound (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""bound",
+ 10,
istub->orb_core ()
);
@@ -6106,6 +6160,7 @@ CORBA::ULong CORBA_WstringDef::bound (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""bound",
+ 10,
istub->orb_core ()
);
@@ -6165,6 +6220,7 @@ void CORBA_WstringDef::bound (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""bound",
+ 10,
istub->orb_core ()
);
@@ -6299,6 +6355,7 @@ CORBA::UShort CORBA_FixedDef::digits (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""digits",
+ 11,
istub->orb_core ()
);
@@ -6358,6 +6415,7 @@ void CORBA_FixedDef::digits (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""digits",
+ 11,
istub->orb_core ()
);
@@ -6417,6 +6475,7 @@ CORBA::Short CORBA_FixedDef::scale (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""scale",
+ 10,
istub->orb_core ()
);
@@ -6476,6 +6535,7 @@ void CORBA_FixedDef::scale (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""scale",
+ 10,
istub->orb_core ()
);
@@ -6610,6 +6670,7 @@ CORBA::ULong CORBA_SequenceDef::bound (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""bound",
+ 10,
istub->orb_core ()
);
@@ -6669,6 +6730,7 @@ void CORBA_SequenceDef::bound (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""bound",
+ 10,
istub->orb_core ()
);
@@ -6728,6 +6790,7 @@ CORBA::TypeCode_ptr CORBA_SequenceDef::element_type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""element_type",
+ 17,
istub->orb_core ()
);
@@ -6786,6 +6849,7 @@ CORBA_IDLType_ptr CORBA_SequenceDef::element_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""element_type_def",
+ 21,
istub->orb_core ()
);
@@ -6845,6 +6909,7 @@ void CORBA_SequenceDef::element_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""element_type_def",
+ 21,
istub->orb_core ()
);
@@ -6979,6 +7044,7 @@ CORBA::ULong CORBA_ArrayDef::length (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""length",
+ 11,
istub->orb_core ()
);
@@ -7038,6 +7104,7 @@ void CORBA_ArrayDef::length (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""length",
+ 11,
istub->orb_core ()
);
@@ -7097,6 +7164,7 @@ CORBA::TypeCode_ptr CORBA_ArrayDef::element_type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""element_type",
+ 17,
istub->orb_core ()
);
@@ -7155,6 +7223,7 @@ CORBA_IDLType_ptr CORBA_ArrayDef::element_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""element_type_def",
+ 21,
istub->orb_core ()
);
@@ -7213,6 +7282,7 @@ void CORBA_ArrayDef::element_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""element_type_def",
+ 21,
istub->orb_core ()
);
@@ -7347,6 +7417,7 @@ CORBA::TypeCode_ptr CORBA_ExceptionDef::type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""type",
+ 9,
istub->orb_core ()
);
@@ -7406,6 +7477,7 @@ CORBA_StructMemberSeq * CORBA_ExceptionDef::members (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""members",
+ 12,
istub->orb_core ()
);
@@ -7465,6 +7537,7 @@ void CORBA_ExceptionDef::members (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""members",
+ 12,
istub->orb_core ()
);
@@ -7665,6 +7738,7 @@ CORBA::TypeCode_ptr CORBA_AttributeDef::type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""type",
+ 9,
istub->orb_core ()
);
@@ -7723,6 +7797,7 @@ CORBA_IDLType_ptr CORBA_AttributeDef::type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""type_def",
+ 13,
istub->orb_core ()
);
@@ -7782,6 +7857,7 @@ void CORBA_AttributeDef::type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""type_def",
+ 13,
istub->orb_core ()
);
@@ -7841,6 +7917,7 @@ CORBA::AttributeMode CORBA_AttributeDef::mode (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""mode",
+ 9,
istub->orb_core ()
);
@@ -7900,6 +7977,7 @@ void CORBA_AttributeDef::mode (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""mode",
+ 9,
istub->orb_core ()
);
@@ -8702,6 +8780,7 @@ CORBA::TypeCode_ptr CORBA_OperationDef::result (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""result",
+ 11,
istub->orb_core ()
);
@@ -8760,6 +8839,7 @@ CORBA_IDLType_ptr CORBA_OperationDef::result_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""result_def",
+ 15,
istub->orb_core ()
);
@@ -8819,6 +8899,7 @@ void CORBA_OperationDef::result_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""result_def",
+ 15,
istub->orb_core ()
);
@@ -8879,6 +8960,7 @@ CORBA_ParDescriptionSeq * CORBA_OperationDef::params (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""params",
+ 11,
istub->orb_core ()
);
@@ -8938,6 +9020,7 @@ void CORBA_OperationDef::params (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""params",
+ 11,
istub->orb_core ()
);
@@ -8997,6 +9080,7 @@ CORBA::OperationMode CORBA_OperationDef::mode (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""mode",
+ 9,
istub->orb_core ()
);
@@ -9056,6 +9140,7 @@ void CORBA_OperationDef::mode (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""mode",
+ 9,
istub->orb_core ()
);
@@ -9116,6 +9201,7 @@ CORBA_ContextIdSeq * CORBA_OperationDef::contexts (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""contexts",
+ 13,
istub->orb_core ()
);
@@ -9175,6 +9261,7 @@ void CORBA_OperationDef::contexts (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""contexts",
+ 13,
istub->orb_core ()
);
@@ -9294,6 +9381,7 @@ void CORBA_OperationDef::exceptions (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""exceptions",
+ 15,
istub->orb_core ()
);
@@ -10149,6 +10237,7 @@ CORBA_InterfaceDefSeq * CORBA_InterfaceDef::base_interfaces (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""base_interfaces",
+ 20,
istub->orb_core ()
);
@@ -10208,6 +10297,7 @@ void CORBA_InterfaceDef::base_interfaces (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""base_interfaces",
+ 20,
istub->orb_core ()
);
@@ -10268,6 +10358,7 @@ CORBA::Boolean CORBA_InterfaceDef::is_a (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"is_a",
+ 4,
istub->orb_core ()
);
@@ -10673,6 +10764,7 @@ CORBA_InterfaceDef::FullInterfaceDescription * CORBA_InterfaceDef::describe_inte
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"describe_interface",
+ 18,
istub->orb_core ()
);
@@ -10736,6 +10828,7 @@ CORBA_AttributeDef_ptr CORBA_InterfaceDef::create_attribute (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_attribute",
+ 16,
istub->orb_core ()
);
@@ -10812,6 +10905,7 @@ CORBA_OperationDef_ptr CORBA_InterfaceDef::create_operation (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_operation",
+ 16,
istub->orb_core ()
);
@@ -11288,6 +11382,7 @@ CORBA::TypeCode_ptr CORBA_ValueMemberDef::type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""type",
+ 9,
istub->orb_core ()
);
@@ -11346,6 +11441,7 @@ CORBA_IDLType_ptr CORBA_ValueMemberDef::type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""type_def",
+ 13,
istub->orb_core ()
);
@@ -11405,6 +11501,7 @@ void CORBA_ValueMemberDef::type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""type_def",
+ 13,
istub->orb_core ()
);
@@ -11464,6 +11561,7 @@ CORBA::Visibility CORBA_ValueMemberDef::access (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""access",
+ 11,
istub->orb_core ()
);
@@ -11523,6 +11621,7 @@ void CORBA_ValueMemberDef::access (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""access",
+ 11,
istub->orb_core ()
);
@@ -11657,6 +11756,7 @@ CORBA_InterfaceDef_ptr CORBA_ValueDef::supported_interface (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""supported_interface",
+ 24,
istub->orb_core ()
);
@@ -11716,6 +11816,7 @@ void CORBA_ValueDef::supported_interface (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""supported_interface",
+ 24,
istub->orb_core ()
);
@@ -11776,6 +11877,7 @@ CORBA_InitializerSeq * CORBA_ValueDef::initializers (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""initializers",
+ 17,
istub->orb_core ()
);
@@ -11835,6 +11937,7 @@ void CORBA_ValueDef::initializers (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""initializers",
+ 17,
istub->orb_core ()
);
@@ -11894,6 +11997,7 @@ CORBA_ValueDef_ptr CORBA_ValueDef::base_value (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""base_value",
+ 15,
istub->orb_core ()
);
@@ -11953,6 +12057,7 @@ void CORBA_ValueDef::base_value (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""base_value",
+ 15,
istub->orb_core ()
);
@@ -12013,6 +12118,7 @@ CORBA_ValueDefSeq * CORBA_ValueDef::abstract_base_values (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""abstract_base_values",
+ 25,
istub->orb_core ()
);
@@ -12072,6 +12178,7 @@ void CORBA_ValueDef::abstract_base_values (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""abstract_base_values",
+ 25,
istub->orb_core ()
);
@@ -12131,6 +12238,7 @@ CORBA::Boolean CORBA_ValueDef::is_abstract (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""is_abstract",
+ 16,
istub->orb_core ()
);
@@ -12190,6 +12298,7 @@ void CORBA_ValueDef::is_abstract (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""is_abstract",
+ 16,
istub->orb_core ()
);
@@ -12249,6 +12358,7 @@ CORBA::Boolean CORBA_ValueDef::is_custom (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""is_custom",
+ 14,
istub->orb_core ()
);
@@ -12308,6 +12418,7 @@ void CORBA_ValueDef::is_custom (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""is_custom",
+ 14,
istub->orb_core ()
);
@@ -12367,6 +12478,7 @@ CORBA::Boolean CORBA_ValueDef::is_truncatable (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""is_truncatable",
+ 19,
istub->orb_core ()
);
@@ -12426,6 +12538,7 @@ void CORBA_ValueDef::is_truncatable (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""is_truncatable",
+ 19,
istub->orb_core ()
);
@@ -12486,6 +12599,7 @@ CORBA::Boolean CORBA_ValueDef::is_a (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"is_a",
+ 4,
istub->orb_core ()
);
@@ -13057,6 +13171,7 @@ CORBA_ValueDef::FullValueDescription * CORBA_ValueDef::describe_value (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"describe_value",
+ 14,
istub->orb_core ()
);
@@ -13120,6 +13235,7 @@ CORBA_ValueMemberDef_ptr CORBA_ValueDef::create_value_member (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_value_member",
+ 19,
istub->orb_core ()
);
@@ -13193,6 +13309,7 @@ CORBA_AttributeDef_ptr CORBA_ValueDef::create_attribute (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_attribute",
+ 16,
istub->orb_core ()
);
@@ -13269,6 +13386,7 @@ CORBA_OperationDef_ptr CORBA_ValueDef::create_operation (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_operation",
+ 16,
istub->orb_core ()
);
@@ -13512,6 +13630,7 @@ CORBA_IDLType_ptr CORBA_ValueBoxDef::original_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""original_type_def",
+ 22,
istub->orb_core ()
);
@@ -13571,6 +13690,7 @@ void CORBA_ValueBoxDef::original_type_def (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""original_type_def",
+ 22,
istub->orb_core ()
);
diff --git a/TAO/tao/Invocation.cpp b/TAO/tao/Invocation.cpp
index ccf4a72c359..d0dcca3f2a8 100644
--- a/TAO/tao/Invocation.cpp
+++ b/TAO/tao/Invocation.cpp
@@ -70,9 +70,11 @@ ACE_TIMEPROBE_EVENT_DESCRIPTIONS (TAO_Invocation_Timeprobe_Description,
TAO_GIOP_Invocation::TAO_GIOP_Invocation (TAO_Stub *stub,
const char *operation,
+ CORBA::ULong opname_len,
TAO_ORB_Core* orb_core)
: stub_ (stub),
opname_ (operation),
+ opname_len_ (opname_len),
request_id_ (0),
out_stream_ (buffer, sizeof buffer, /* ACE_CDR::DEFAULT_BUFSIZE */
TAO_ENCAP_BYTE_ORDER,
@@ -324,6 +326,7 @@ TAO_GIOP_Invocation::prepare_header (CORBA::Octet response_flags,
response_flags,
this->profile_->object_key (),
this->opname_,
+ this->opname_len_,
principal,
this->out_stream_,
this->orb_core_) == 0)
@@ -906,8 +909,9 @@ TAO_GIOP_Twoway_Invocation::invoke_i (CORBA::Environment &ACE_TRY_ENV)
TAO_GIOP_Oneway_Invocation::
TAO_GIOP_Oneway_Invocation (TAO_Stub *stub,
const char *operation,
+ CORBA::ULong opname_len,
TAO_ORB_Core *orb_core)
- : TAO_GIOP_Invocation (stub, operation, orb_core),
+ : TAO_GIOP_Invocation (stub, operation, opname_len, orb_core),
sync_scope_ (TAO::SYNC_WITH_TRANSPORT)
{
#if (TAO_HAS_CORBA_MESSAGING == 1)
diff --git a/TAO/tao/Invocation.h b/TAO/tao/Invocation.h
index 210e5ca556e..b843567904f 100644
--- a/TAO/tao/Invocation.h
+++ b/TAO/tao/Invocation.h
@@ -74,6 +74,7 @@ class TAO_Export TAO_GIOP_Invocation
public:
TAO_GIOP_Invocation (TAO_Stub *data,
const char *operation,
+ CORBA::ULong opname_len,
TAO_ORB_Core* orb_core);
// Constructor.
@@ -150,6 +151,9 @@ protected:
const char *opname_;
// Name of the operation being invoked.
+ CORBA::ULong opname_len_;
+ // Precalculated length of opname_.
+
CORBA::ULong request_id_;
// Request ID of this operation.
@@ -195,6 +199,7 @@ class TAO_Export TAO_GIOP_Twoway_Invocation : public TAO_GIOP_Invocation
public:
TAO_GIOP_Twoway_Invocation (TAO_Stub *data,
const char *operation,
+ CORBA::ULong opname_len,
TAO_ORB_Core* orb_core);
// Constructor.
@@ -245,6 +250,7 @@ class TAO_Export TAO_GIOP_Oneway_Invocation : public TAO_GIOP_Invocation
public:
TAO_GIOP_Oneway_Invocation (TAO_Stub *data,
const char *operation,
+ CORBA::ULong opname_len,
TAO_ORB_Core* orb_core);
// Constructor.
diff --git a/TAO/tao/Invocation.i b/TAO/tao/Invocation.i
index e57ec6fa36e..b3ed0d09ef2 100644
--- a/TAO/tao/Invocation.i
+++ b/TAO/tao/Invocation.i
@@ -27,8 +27,9 @@ ACE_INLINE
TAO_GIOP_Twoway_Invocation::
TAO_GIOP_Twoway_Invocation (TAO_Stub *stub,
const char *operation,
+ CORBA::ULong opname_len,
TAO_ORB_Core *orb_core)
- : TAO_GIOP_Invocation (stub, operation, orb_core),
+ : TAO_GIOP_Invocation (stub, operation, opname_len, orb_core),
rd_ (orb_core, this->service_info_)
{
}
@@ -53,7 +54,7 @@ ACE_INLINE
TAO_GIOP_Locate_Request_Invocation::
TAO_GIOP_Locate_Request_Invocation (TAO_Stub *stub,
TAO_ORB_Core *orb_core)
- : TAO_GIOP_Invocation (stub, 0, orb_core),
+ : TAO_GIOP_Invocation (stub, 0, 0, orb_core),
rd_ (orb_core, this->service_info_)
{
}
diff --git a/TAO/tao/MessagingC.cpp b/TAO/tao/MessagingC.cpp
index 5bf8c2c8604..4f2d02b7ae4 100644
--- a/TAO/tao/MessagingC.cpp
+++ b/TAO/tao/MessagingC.cpp
@@ -1669,6 +1669,7 @@ CORBA::Object_ptr Messaging::Poller::operation_target (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""operation_target",
+ 21,
istub->orb_core ()
);
@@ -1723,6 +1724,7 @@ char * Messaging::Poller::operation_name (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""operation_name",
+ 19,
istub->orb_core ()
);
@@ -1777,6 +1779,7 @@ Messaging::ReplyHandler_ptr Messaging::Poller::associated_handler (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""associated_handler",
+ 23,
istub->orb_core ()
);
@@ -1831,6 +1834,7 @@ void Messaging::Poller::associated_handler (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_set_""associated_handler",
+ 23,
istub->orb_core ()
);
@@ -1886,6 +1890,7 @@ CORBA::Boolean Messaging::Poller::is_from_poller (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""is_from_poller",
+ 19,
istub->orb_core ()
);
@@ -1940,6 +1945,7 @@ CORBA::Object_ptr Messaging::Poller::target (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""target",
+ 11,
istub->orb_core ()
);
@@ -1994,6 +2000,7 @@ char * Messaging::Poller::op_name (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""op_name",
+ 12,
istub->orb_core ()
);
diff --git a/TAO/tao/Object.cpp b/TAO/tao/Object.cpp
index 83483ded144..d0e5660508d 100644
--- a/TAO/tao/Object.cpp
+++ b/TAO/tao/Object.cpp
@@ -111,6 +111,7 @@ CORBA_Object::_is_a (const CORBA::Char *type_id,
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_is_a",
+ 5,
istub->orb_core ()
);
@@ -285,8 +286,9 @@ CORBA_Object::_non_existent (CORBA::Environment &ACE_TRY_ENV)
TAO_GIOP_Twoway_Invocation _tao_call (
- istub,
+ istub,
"_non_existent",
+ 13,
istub->orb_core ()
);
@@ -431,6 +433,7 @@ CORBA_Object::_get_interface (CORBA::Environment &ACE_TRY_ENV)
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_interface",
+ 10,
istub->orb_core ()
);
diff --git a/TAO/tao/POAC.cpp b/TAO/tao/POAC.cpp
index a70192cd541..287b75153f6 100644
--- a/TAO/tao/POAC.cpp
+++ b/TAO/tao/POAC.cpp
@@ -343,6 +343,7 @@ PortableServer::ThreadPolicyValue PortableServer::ThreadPolicy::value(CORBA::Env
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""value",
+ 10,
istub->orb_core ()
);
@@ -506,6 +507,7 @@ PortableServer::LifespanPolicyValue PortableServer::LifespanPolicy::value(CORBA:
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""value",
+ 10,
istub->orb_core ()
);
@@ -669,6 +671,7 @@ PortableServer::IdUniquenessPolicyValue PortableServer::IdUniquenessPolicy::valu
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""value",
+ 10,
istub->orb_core ()
);
@@ -831,6 +834,7 @@ PortableServer::IdAssignmentPolicyValue PortableServer::IdAssignmentPolicy::valu
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""value",
+ 10,
istub->orb_core ()
);
@@ -996,6 +1000,7 @@ PortableServer::ImplicitActivationPolicyValue PortableServer::ImplicitActivation
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""value",
+ 10,
istub->orb_core ()
);
@@ -1159,6 +1164,7 @@ PortableServer::ServantRetentionPolicyValue PortableServer::ServantRetentionPoli
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""value",
+ 10,
istub->orb_core ()
);
@@ -1322,6 +1328,7 @@ PortableServer::RequestProcessingPolicyValue PortableServer::RequestProcessingPo
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""value",
+ 10,
istub->orb_core ()
);
@@ -3659,6 +3666,7 @@ PortableServer::ObjectId * PortableServer::Current::get_object_id (CORBA::Enviro
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"get_object_id",
+ 13,
istub->orb_core ()
);
diff --git a/TAO/tao/PolicyC.cpp b/TAO/tao/PolicyC.cpp
index 1722ccd8b78..a71043b830f 100644
--- a/TAO/tao/PolicyC.cpp
+++ b/TAO/tao/PolicyC.cpp
@@ -240,6 +240,7 @@ CORBA::PolicyType CORBA_Policy::policy_type (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"_get_""policy_type",
+ 16,
istub->orb_core ()
);
@@ -293,6 +294,7 @@ CORBA_Policy_ptr CORBA_Policy::copy (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"copy",
+ 4,
istub->orb_core ()
);
@@ -345,6 +347,7 @@ void CORBA_Policy::destroy (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"destroy",
+ 7,
istub->orb_core ()
);
diff --git a/TAO/tao/PollableC.cpp b/TAO/tao/PollableC.cpp
index cc0b875fa23..e83dd53ae25 100644
--- a/TAO/tao/PollableC.cpp
+++ b/TAO/tao/PollableC.cpp
@@ -127,6 +127,7 @@ CORBA::Boolean CORBA_Pollable::is_ready (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"is_ready",
+ 8,
istub->orb_core ()
);
@@ -187,6 +188,7 @@ CORBA_PollableSet_ptr CORBA_Pollable::create_pollable_set (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_pollable_set",
+ 19,
istub->orb_core ()
);
@@ -560,6 +562,7 @@ CORBA::DIIPollable_ptr CORBA_PollableSet::create_dii_pollable (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"create_dii_pollable",
+ 19,
istub->orb_core ()
);
@@ -614,6 +617,7 @@ void CORBA_PollableSet::add_pollable (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"add_pollable",
+ 12,
istub->orb_core ()
);
@@ -675,6 +679,7 @@ CORBA_Pollable_ptr CORBA_PollableSet::poll (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"poll",
+ 4,
istub->orb_core ()
);
@@ -740,6 +745,7 @@ void CORBA_PollableSet::remove (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"remove",
+ 6,
istub->orb_core ()
);
@@ -795,6 +801,7 @@ CORBA::UShort CORBA_PollableSet::number_left (
TAO_GIOP_Twoway_Invocation _tao_call (
istub,
"number_left",
+ 11,
istub->orb_core ()
);
diff --git a/TAO/tao/Stub.cpp b/TAO/tao/Stub.cpp
index 242dffc671a..6613e626dbf 100644
--- a/TAO/tao/Stub.cpp
+++ b/TAO/tao/Stub.cpp
@@ -338,7 +338,9 @@ TAO_Stub::do_static_call (CORBA::Environment &ACE_TRY_ENV,
if (info->is_roundtrip)
{
- TAO_GIOP_Twoway_Invocation call (this, info->opname,
+ TAO_GIOP_Twoway_Invocation call (this,
+ info->opname,
+ ACE_OS::strlen (info->opname),
this->orb_core_);
ACE_TIMEPROBE (TAO_STUB_OBJECT_DO_STATIC_CALL_INVOCATION_CTOR);
@@ -483,7 +485,9 @@ TAO_Stub::do_static_call (CORBA::Environment &ACE_TRY_ENV,
} // if (two way)
else
{
- TAO_GIOP_Oneway_Invocation call (this, info->opname,
+ TAO_GIOP_Oneway_Invocation call (this,
+ info->opname,
+ ACE_OS::strlen (info->opname),
this->orb_core_);
ACE_TIMEPROBE (TAO_STUB_OBJECT_DO_STATIC_CALL_INVOCATION_CTOR);
@@ -615,6 +619,7 @@ TAO_Stub::do_dynamic_call (const char *opname,
{
TAO_GIOP_Twoway_Invocation call (this,
opname,
+ ACE_OS::strlen (opname),
this->orb_core_);
// Loop as needed for forwarding; see above.
@@ -681,6 +686,7 @@ TAO_Stub::do_dynamic_call (const char *opname,
{
TAO_GIOP_Oneway_Invocation call (this,
opname,
+ ACE_OS::strlen (opname),
this->orb_core_);
for (;;)