From 66b68f6aaa7a0b9b167a014a656e30ad2ac52ce5 Mon Sep 17 00:00:00 2001 From: parsons Date: Tue, 22 Feb 2000 02:26:11 +0000 Subject: Optimization of oneway, twoway and ami calls. --- TAO/TAO_IDL/be/be_visitor_operation/ami_cs.cpp | 6 ++ .../be/be_visitor_operation/operation_cs.cpp | 9 +- TAO/tao/Asynch_Invocation.h | 1 + TAO/tao/Asynch_Invocation.i | 3 + TAO/tao/DomainC.cpp | 2 + TAO/tao/GIOP.cpp | 9 +- TAO/tao/GIOP.h | 3 + TAO/tao/ImplRepoC.cpp | 13 +++ TAO/tao/InterfaceC.cpp | 120 +++++++++++++++++++++ TAO/tao/Invocation.cpp | 6 +- TAO/tao/Invocation.h | 6 ++ TAO/tao/Invocation.i | 5 +- TAO/tao/MessagingC.cpp | 7 ++ TAO/tao/Object.cpp | 5 +- TAO/tao/POAC.cpp | 8 ++ TAO/tao/PolicyC.cpp | 3 + TAO/tao/PollableC.cpp | 7 ++ TAO/tao/Stub.cpp | 10 +- 18 files changed, 214 insertions(+), 9 deletions(-) (limited to 'TAO') 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 (;;) -- cgit v1.2.1