diff options
Diffstat (limited to 'TAO_IDL/be/be_visitor_home/home_svh.cpp')
-rw-r--r-- | TAO_IDL/be/be_visitor_home/home_svh.cpp | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/TAO_IDL/be/be_visitor_home/home_svh.cpp b/TAO_IDL/be/be_visitor_home/home_svh.cpp index a6900282c88..0de7daadb7f 100644 --- a/TAO_IDL/be/be_visitor_home/home_svh.cpp +++ b/TAO_IDL/be/be_visitor_home/home_svh.cpp @@ -51,7 +51,7 @@ be_visitor_home_svh::visit_home (be_home *node) /// CIDL-generated namespace used 'CIDL_' + composition name. /// Now we use 'CIAO_' + component's flat name. - os_ << be_nl << be_nl + os_ << be_nl_2 << "namespace CIAO_" << comp_->flat_name () << "_Impl" << be_nl << "{" << be_idt; @@ -96,7 +96,7 @@ be_visitor_home_svh::visit_factory (be_factory *node) AST_Component *c = h->managed_component (); - os_ << be_nl << be_nl + os_ << be_nl_2 << "virtual ::" << c->name () << "_ptr" << be_nl << node->local_name (); @@ -146,7 +146,8 @@ be_visitor_home_svh::gen_servant_class (void) << "Home_Servant_Impl<" << be_idt_nl << "::" << node_->full_skel_name () << "," << be_nl << global << sname << "::CCM_" << lname << "," << be_nl - << clname << "_Servant>" + << clname << "_Servant," << be_nl + << "::CIAO::" << be_global->ciao_container_type () << "_Container>" << be_uidt << be_uidt << be_uidt << be_uidt_nl << "{" << be_nl << "public:" << be_idt_nl; @@ -154,14 +155,15 @@ be_visitor_home_svh::gen_servant_class (void) os_ << lname << "_Servant (" << be_idt_nl << global << sname << "::CCM_" << lname << "_ptr exe," << be_nl << "const char * ins_name," << be_nl - << "::CIAO::Container_ptr c);" << be_uidt; + << "::CIAO::" << be_global->ciao_container_type () + << "_Container_ptr c);" << be_uidt; - os_ << be_nl << be_nl + os_ << be_nl_2 << "virtual ~" << lname << "_Servant (void);"; if (this->node_->has_rw_attributes ()) { - os_ << be_nl << be_nl + os_ << be_nl_2 << "virtual void" << be_nl << "set_attributes (const " << "::Components::ConfigValues & descr);"; @@ -171,30 +173,30 @@ AST_Type *pk = node_->primary_key (); if (pk != 0) { - os_ << be_nl << be_nl + os_ << be_nl_2 << "// Implicit home primary key operations - not supported."; - os_ << be_nl << be_nl + os_ << be_nl_2 << "virtual ::" << comp_->name () << "_ptr" << be_nl << "create (" << be_idt_nl << "::" << pk->name () << " * key);" << be_uidt; if (!be_global->gen_lwccm ()) { - os_ << be_nl << be_nl + os_ << be_nl_2 << "virtual ::" << comp_->name () << "_ptr" << be_nl << "find_by_primary_key (" << be_idt_nl << "::" << pk->name () << " * key);" << be_uidt; } - os_ << be_nl << be_nl + os_ << be_nl_2 << "virtual void" << be_nl << "remove (" << be_idt_nl << "::" << pk->name () << " * key);" << be_uidt; if (!be_global->gen_lwccm ()) { - os_ << be_nl << be_nl + os_ << be_nl_2 << "virtual ::" << pk->name () << " *" << be_nl << "get_primary_key (" << be_idt_nl << "::" << comp_->name () << "_ptr comp);" << be_uidt; @@ -250,13 +252,14 @@ AST_Type *pk = node_->primary_key (); void be_visitor_home_svh::gen_entrypoint (void) { - os_ << be_nl << be_nl + os_ << be_nl_2 << "extern \"C\" " << export_macro_.c_str () << " ::PortableServer::Servant" << be_nl << "create_" << node_->flat_name () << "_Servant (" << be_idt_nl << "::Components::HomeExecutorBase_ptr p," << be_nl - << "::CIAO::Container_ptr c," << be_nl + << "::CIAO::" << be_global->ciao_container_type () + << "_Container_ptr c," << be_nl << "const char * ins_name);" << be_uidt; } |