From 89cc4ab19f758938ba5d383300be0088c59df033 Mon Sep 17 00:00:00 2001 From: Marijke Hengstmengel Date: Tue, 6 Dec 2011 11:29:18 +0000 Subject: Tue Dec 6 11:26:51 UTC 2011 Marijke Hengstmengel * TAO_IDL/be/be_interface.cpp: * TAO_IDL/be/be_visitor_operation/operation_sh.cpp: * TAO_IDL/be/be_visitor_operation/operation_ss.cpp: No facet servant operations generated if connector. --- TAO/ChangeLog.BRANCH | 7 +++++++ TAO/TAO_IDL/be/be_interface.cpp | 18 ++++++++++++++++++ TAO/TAO_IDL/be/be_visitor_operation/operation_sh.cpp | 10 ++++++++++ TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp | 10 ++++++++++ 4 files changed, 45 insertions(+) diff --git a/TAO/ChangeLog.BRANCH b/TAO/ChangeLog.BRANCH index 3e85e4a84b3..7b7497c5303 100644 --- a/TAO/ChangeLog.BRANCH +++ b/TAO/ChangeLog.BRANCH @@ -1,3 +1,10 @@ +Tue Dec 6 11:26:51 UTC 2011 Marijke Hengstmengel + + * TAO_IDL/be/be_interface.cpp: + * TAO_IDL/be/be_visitor_operation/operation_sh.cpp: + * TAO_IDL/be/be_visitor_operation/operation_ss.cpp: + No facet servant operations generated if connector. + Mon Dec 5 16:35:32 UTC 2011 Marijke Hengstmengel * TAO_IDL/be/be_visitor_component/component_svh.cpp: diff --git a/TAO/TAO_IDL/be/be_interface.cpp b/TAO/TAO_IDL/be/be_interface.cpp index b0028396a15..4a82e5f3cd7 100644 --- a/TAO/TAO_IDL/be/be_interface.cpp +++ b/TAO/TAO_IDL/be/be_interface.cpp @@ -1273,6 +1273,15 @@ be_interface::gen_optable_entries (be_interface *derived_interface, continue; } + // No server-side operation generation on connector, + AST_Decl::NodeType nt = + ScopeAsDecl (op->defined_in ())->node_type (); + + if (nt == AST_Decl::NT_connector) + { + continue; + } + // We are an operation node. *os << "{\"" << d->original_local_name () << "\", &" << full_skeleton_name << "::" @@ -1374,6 +1383,15 @@ be_interface::gen_optable_entries (be_interface *derived_interface, continue; } + // No server-side operation generation on connector, + AST_Decl::NodeType nt = + ScopeAsDecl (op->defined_in ())->node_type (); + + if (nt == AST_Decl::NT_connector) + { + continue; + } + // Generate operation name. // We are an operation node. We use the original diff --git a/TAO/TAO_IDL/be/be_visitor_operation/operation_sh.cpp b/TAO/TAO_IDL/be/be_visitor_operation/operation_sh.cpp index af72ab06923..57dc49cc163 100644 --- a/TAO/TAO_IDL/be/be_visitor_operation/operation_sh.cpp +++ b/TAO/TAO_IDL/be/be_visitor_operation/operation_sh.cpp @@ -34,6 +34,16 @@ be_visitor_operation_sh::visit_operation (be_operation *node) return 0; } + /// No server-side code generation on connector, + /// except for operations derived from attributes. + AST_Decl::NodeType nt = + ScopeAsDecl (node->defined_in ())->node_type (); + + if (nt == AST_Decl::NT_connector && !this->ctx_->attribute ()) + { + return 0; + } + TAO_OutStream *os = this->ctx_->stream (); this->ctx_->node (node); diff --git a/TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp b/TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp index 2903992ecba..b41444d95a5 100644 --- a/TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp +++ b/TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp @@ -34,6 +34,16 @@ be_visitor_operation_ss::visit_operation (be_operation * node) return 0; } + /// No server-side code generation on connector, + /// except for operations derived from attributes. + AST_Decl::NodeType nt = + ScopeAsDecl (node->defined_in ())->node_type (); + + if (nt == AST_Decl::NT_connector && !this->ctx_->attribute ()) + { + return 0; + } + TAO_OutStream *os = this->ctx_->stream (); be_type *bt = 0; -- cgit v1.2.1