diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2011-11-27 21:22:15 +0000 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2011-11-27 21:22:15 +0000 |
commit | 663660f676a88215851e9803da82395d86db2a35 (patch) | |
tree | 9bc183f1387013f95d099dbe626b0f6b490dbb54 /TAO/TAO_IDL/be/be_visitor_component | |
parent | 1d924c99a0ee0260e897596642336ff6d68883b2 (diff) | |
download | ATCD-663660f676a88215851e9803da82395d86db2a35.tar.gz |
Sun Nov 27 18:19:18 UTC 2011 Johnny Willemsen <jwillemsen@remedy.nl>
Merging in another set of changes. The skeletons got refactored even
more and now the S.inl files are not generated anymore. For CIAO
we now generate the facet servants in new _svnt_T.{h,cpp} files, which
is the first step in a major refactoring and simplification of the
CCM servants which is also a first step in the direction of a Common
Component Model
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_component')
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_component/component.cpp | 4 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_component/component_svh.cpp | 12 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_component/component_svs.cpp | 11 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp | 1 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_component/facet_svth.cpp (renamed from TAO/TAO_IDL/be/be_visitor_component/facet_svh.cpp) | 22 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_component/facet_svts.cpp (renamed from TAO/TAO_IDL/be/be_visitor_component/facet_svs.cpp) | 23 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp | 1 | ||||
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp | 21 |
8 files changed, 52 insertions, 43 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_component/component.cpp b/TAO/TAO_IDL/be/be_visitor_component/component.cpp index 204ff9b79ad..3e1d2b5ddf2 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/component.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/component.cpp @@ -117,7 +117,6 @@ be_visitor_component::visit_operation (be_operation *node) case TAO_CodeGen::TAO_ROOT_CDR_OP_CH: case TAO_CodeGen::TAO_ROOT_CDR_OP_CS: case TAO_CodeGen::TAO_ROOT_CI: - case TAO_CodeGen::TAO_ROOT_SI: case TAO_CodeGen::TAO_ROOT_SVH: case TAO_CodeGen::TAO_ROOT_SVS: case TAO_CodeGen::TAO_ROOT_EXH: @@ -277,10 +276,11 @@ be_visitor_component::visit_typedef (be_typedef *node) case TAO_CodeGen::TAO_ROOT_SH: case TAO_CodeGen::TAO_ROOT_IH: case TAO_CodeGen::TAO_ROOT_IS: - case TAO_CodeGen::TAO_ROOT_SI: case TAO_CodeGen::TAO_ROOT_SS: case TAO_CodeGen::TAO_ROOT_SVH: case TAO_CodeGen::TAO_ROOT_SVS: + case TAO_CodeGen::TAO_ROOT_SVTH: + case TAO_CodeGen::TAO_ROOT_SVTS: case TAO_CodeGen::TAO_ROOT_EXH: case TAO_CodeGen::TAO_ROOT_EXS: case TAO_CodeGen::TAO_ROOT_CNH: diff --git a/TAO/TAO_IDL/be/be_visitor_component/component_svh.cpp b/TAO/TAO_IDL/be/be_visitor_component/component_svh.cpp index 1764e19a800..b6a57eaacd2 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/component_svh.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/component_svh.cpp @@ -47,18 +47,6 @@ be_visitor_component_svh::visit_component (be_component *node) /// code generation. node->scan (node); - // Generate the facet servant class declaration. - be_visitor_facet_svh facet_visitor (this->ctx_); - - if (facet_visitor.visit_component_scope (node) == -1) - { - ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("be_visitor_component_svh::") - ACE_TEXT ("visit_component - ") - ACE_TEXT ("facet visitor failed\n")), - -1); - } - /// CIDL-generated namespace used 'CIDL_' + composition name. /// Now we use 'CIAO_' + component's flat name. os_ << be_nl_2 diff --git a/TAO/TAO_IDL/be/be_visitor_component/component_svs.cpp b/TAO/TAO_IDL/be/be_visitor_component/component_svs.cpp index 5e098aa39fa..3248f0e7a88 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/component_svs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/component_svs.cpp @@ -43,17 +43,6 @@ be_visitor_component_svs::visit_component (be_component *node) return 0; } - be_visitor_facet_svs facet_visitor (this->ctx_); - - if (facet_visitor.visit_component_scope (node) == -1) - { - ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("be_visitor_component_svs::") - ACE_TEXT ("visit_component - ") - ACE_TEXT ("facet visitor failed\n")), - -1); - } - /// CIDL-generated namespace used 'CIDL_' + composition name. /// Now we use 'CIAO_' + component's flat name. os_ << be_nl_2 diff --git a/TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp b/TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp index 287ee04e09d..a9edd6fa9dc 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/executor_exh.cpp @@ -224,6 +224,7 @@ be_visitor_executor_exh::visit_component (be_component *node) return 0; } + int be_visitor_executor_exh::visit_provides (be_provides *node) { diff --git a/TAO/TAO_IDL/be/be_visitor_component/facet_svh.cpp b/TAO/TAO_IDL/be/be_visitor_component/facet_svth.cpp index 4f279b95e07..415252bd064 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/facet_svh.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/facet_svth.cpp @@ -13,28 +13,40 @@ */ //============================================================================= -be_visitor_facet_svh::be_visitor_facet_svh (be_visitor_context *ctx) +be_visitor_facet_svth::be_visitor_facet_svth (be_visitor_context *ctx) : be_visitor_component_scope (ctx) { } -be_visitor_facet_svh::~be_visitor_facet_svh (void) +be_visitor_facet_svth::~be_visitor_facet_svth (void) { } int -be_visitor_facet_svh::visit_provides (be_provides *node) +be_visitor_facet_svth::visit_provides (be_provides *node) { - if (node->gen_facet_svnt_decl (os_) == -1) + if (node->gen_facet_svnt_tmpl_decl (os_) == -1) { ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("be_visitor_facet_svh") + ACE_TEXT ("be_visitor_facet_svth") ACE_TEXT ("::visit_provides - ") ACE_TEXT ("gen_facet_svnt_decl() ") ACE_TEXT ("failed\n")), -1); } + return 0; +} + +int +be_visitor_facet_svth::visit_component (be_component *node) +{ + this->visit_component_scope (node); return 0; } +int +be_visitor_facet_svth::visit_connector (be_connector *node) +{ + return this->visit_component (node); +} diff --git a/TAO/TAO_IDL/be/be_visitor_component/facet_svs.cpp b/TAO/TAO_IDL/be/be_visitor_component/facet_svts.cpp index c9127923226..abfa8b3310f 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/facet_svs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/facet_svts.cpp @@ -13,28 +13,41 @@ */ //============================================================================= -be_visitor_facet_svs::be_visitor_facet_svs (be_visitor_context *ctx) +be_visitor_facet_svts::be_visitor_facet_svts (be_visitor_context *ctx) : be_visitor_component_scope (ctx) { } -be_visitor_facet_svs::~be_visitor_facet_svs (void) +be_visitor_facet_svts::~be_visitor_facet_svts (void) { } int -be_visitor_facet_svs::visit_provides (be_provides *node) +be_visitor_facet_svts::visit_provides (be_provides *node) { - if (node->gen_facet_svnt_defn (os_) == -1) + if (node->gen_facet_svnt_tmpl_defn (os_) == -1) { ACE_ERROR_RETURN ((LM_ERROR, - ACE_TEXT ("be_visitor_facet_svs") + ACE_TEXT ("be_visitor_facet_svts") ACE_TEXT ("::visit_provides - ") ACE_TEXT ("gen_facet_svnt_defn() ") ACE_TEXT ("failed\n")), -1); } + return 0; +} +int +be_visitor_facet_svts::visit_component (be_component *node) +{ + this->visit_component_scope (node); return 0; } +int +be_visitor_facet_svts::visit_connector (be_connector *node) +{ + return this->visit_component (node); +} + + diff --git a/TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp b/TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp index 0709be18cd0..315309b808e 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/servant_svh.cpp @@ -140,6 +140,7 @@ be_visitor_servant_svh::visit_attribute (be_attribute *node) return v.visit_attribute (node); } + int be_visitor_servant_svh::visit_provides (be_provides *node) { diff --git a/TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp b/TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp index 5778857cf35..d86de6b4ae1 100644 --- a/TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_component/servant_svs.cpp @@ -1,4 +1,3 @@ - //============================================================================= /** * @file servant_svs.cpp @@ -12,6 +11,7 @@ * @author Jeff Parsons */ //============================================================================= +#include <be_helper.h> be_visitor_servant_svs::be_visitor_servant_svs (be_visitor_context *ctx) : be_visitor_component_scope (ctx), @@ -308,15 +308,20 @@ be_visitor_servant_svs::visit_provides (be_provides *node) << "PortableServer::POA_var POA = cnt_safe->the_port_POA ();" << be_nl << "::CORBA::Object_var tmp =" << be_idt_nl << "this->get_facet_executor (\"" << port_name << "\");"<< be_uidt_nl << be_nl - << global << sname << "::CCM_" << lname << "_var tmp_var = "<< global << sname <<"::CCM_" << lname - << "::_narrow (tmp.in());" << be_nl - << "::CIAO_FACET" << prefix_connector - << scope->flat_name () << "::" << lname - << "_Servant *" << port_name << "_servant_impl = 0;" << be_nl + << global << sname << "::CCM_" << lname << "_var tmp_var = " << be_idt_nl + << global << sname <<"::CCM_" << lname + << "::_narrow (tmp.in());" << be_uidt_nl << be_nl + << "typedef " << global << "CIAO_FACET" << prefix_connector + << scope->flat_name () << "::" << obj->local_name () << "_Servant_T <" << be_idt_nl + << "POA_" << sname << global << obj->local_name () + << "," << be_nl << global << sname <<"::CCM_" << lname << "," << be_nl + << global << "Components::" << be_global->ciao_container_type () + << "Context>" << be_idt_nl << lname + << "_type;" << be_uidt_nl << be_uidt_nl + << lname << "_type *" << port_name << "_servant_impl = 0;" << be_nl << "ACE_NEW_THROW_EX (" << be_idt_nl << port_name << "_servant_impl," << be_nl - << "::CIAO_FACET" << prefix_connector - << scope->flat_name () << "::" << lname << "_Servant (" << be_idt_nl + << lname << "_type (" << be_idt_nl << "tmp_var.in(), " << be_nl << "this->context_)," << be_uidt_nl << "CORBA::NO_MEMORY ());" << be_uidt_nl << be_nl |