diff options
author | Marijke Hengstmengel <MHengstmengel@users.noreply.github.com> | 2011-12-06 11:29:18 +0000 |
---|---|---|
committer | Marijke Hengstmengel <MHengstmengel@users.noreply.github.com> | 2011-12-06 11:29:18 +0000 |
commit | 89cc4ab19f758938ba5d383300be0088c59df033 (patch) | |
tree | 97950b73b4c6992baccd61c3d85bc352d6439b0a | |
parent | 210049d5a949a917a71d82b5d45fc1b05ce91cee (diff) | |
download | ATCD-89cc4ab19f758938ba5d383300be0088c59df033.tar.gz |
Tue Dec 6 11:26:51 UTC 2011 Marijke Hengstmengel <hengstmengel_m@remedy.nl>
* 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.
-rw-r--r-- | TAO/ChangeLog.BRANCH | 7 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_interface.cpp | 18 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_operation/operation_sh.cpp | 10 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_operation/operation_ss.cpp | 10 |
4 files changed, 45 insertions, 0 deletions
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 <hengstmengel_m@remedy.nl> + + * 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 <mhengstmengel@remedy.nl> * 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; |