summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-11-16 18:22:47 +0000
committerjai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-11-16 18:22:47 +0000
commit84a1347126bad77a31c96a3792155181f0553bae (patch)
treebfc6ecd3d989ac2ecf1595d28ee2c656fc562009
parent7f886a26641bdf0bee6f4409375491c325c47ded (diff)
downloadATCD-84a1347126bad77a31c96a3792155181f0553bae.tar.gz
*** empty log message ***
-rw-r--r--TAO/CIAO/DAnCE/ciao/CCM_Core.mpc5
-rw-r--r--TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.cpp4
-rw-r--r--TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.h2
-rw-r--r--TAO/CIAO/DAnCE/ciao/Swapping_Container.cpp2
-rw-r--r--TAO/CIAO/DAnCE/ciao/Swapping_Container.h2
-rw-r--r--TAO/CIAO/DAnCE/ciao/Swapping_Servant_Home_Impl_T.cpp25
6 files changed, 29 insertions, 11 deletions
diff --git a/TAO/CIAO/DAnCE/ciao/CCM_Core.mpc b/TAO/CIAO/DAnCE/ciao/CCM_Core.mpc
index aaddf15b8b8..781d49a271a 100644
--- a/TAO/CIAO/DAnCE/ciao/CCM_Core.mpc
+++ b/TAO/CIAO/DAnCE/ciao/CCM_Core.mpc
@@ -136,10 +136,11 @@ project (CIAO_DnC_Server) : orbsvcslib, portableserver, valuetype, ifr_client, u
Context_Impl_Base.cpp
Home_Servant_Impl_Base.cpp
Servant_Impl_Base.cpp
- Swapping_Servant_Impl_Base.cpp
+ Swapping_Servant_Home_Impl_Base.cpp
Server_init.cpp
Servant_Activator.cpp
Dynamic_Component_Activator.cpp
+ Dynamic_Component_Servant_Base.cpp
Port_Activator.cpp
StandardConfigurator_Impl.cpp
}
@@ -152,6 +153,8 @@ project (CIAO_DnC_Server) : orbsvcslib, portableserver, valuetype, ifr_client, u
Template_Files {
Context_Impl_T.cpp
Home_Servant_Impl_T.cpp
+ Swapping_Servant_Home_Impl_T.cpp
+ Dynamic_Component_Servant_T.cpp
Servant_Impl_T.cpp
Servant_Activator_T.cpp
}
diff --git a/TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.cpp b/TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.cpp
index b30f8392b35..848e8a77128 100644
--- a/TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.cpp
+++ b/TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.cpp
@@ -7,7 +7,9 @@
namespace CIAO
{
- template <typename COMP_SERVANT>
+ template <typename COMP_SERVANT,
+ typename COMP_EXEC,
+ typename COMP_EXEC_VAR>
PortableServer::Servant Dynamic_Component_Servant<COMP_SERVANT>::create (void)
{
return new COMP_SERVANT;
diff --git a/TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.h b/TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.h
index a9916a5cee9..870b3d48e1a 100644
--- a/TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.h
+++ b/TAO/CIAO/DAnCE/ciao/Dynamic_Component_Servant_T.h
@@ -29,7 +29,7 @@
namespace CIAO
{
- template <typename COMP_SERVANT>
+ template <typename COMP_SERVANT, typename COMP_EXEC, typename COMP_EXEC_VAR>
class Dynamic_Component_Servant
: public virtual Dynamic_Component_Servant_Base
{
diff --git a/TAO/CIAO/DAnCE/ciao/Swapping_Container.cpp b/TAO/CIAO/DAnCE/ciao/Swapping_Container.cpp
index 2d122d5be82..8a594b3074b 100644
--- a/TAO/CIAO/DAnCE/ciao/Swapping_Container.cpp
+++ b/TAO/CIAO/DAnCE/ciao/Swapping_Container.cpp
@@ -76,6 +76,8 @@ namespace CIAO
void
Swapping_Container::update_servant_map
(PortableServer::ObjectId &oid,
+ ::Components::CCMHome_ptr home,
+ ::Components::EnterpriseComponent_ptr ec,
Dynamic_Component_Servant_Base* servant
ACE_ENV_ARG_DECL)
{
diff --git a/TAO/CIAO/DAnCE/ciao/Swapping_Container.h b/TAO/CIAO/DAnCE/ciao/Swapping_Container.h
index 302300e32bc..04f8e2f3ca4 100644
--- a/TAO/CIAO/DAnCE/ciao/Swapping_Container.h
+++ b/TAO/CIAO/DAnCE/ciao/Swapping_Container.h
@@ -54,6 +54,8 @@ namespace CIAO
ACE_THROW_SPEC ((CORBA::SystemException));
void update_servant_map (PortableServer::ObjectId &oid,
+ ::Components::CCMHome_ptr home,
+ ::Components::EnterpriseComponent_ptr ec,
Dynamic_Component_Servant_Base* servant
ACE_ENV_ARG_DECL);
diff --git a/TAO/CIAO/DAnCE/ciao/Swapping_Servant_Home_Impl_T.cpp b/TAO/CIAO/DAnCE/ciao/Swapping_Servant_Home_Impl_T.cpp
index 6b184851a32..9371f933057 100644
--- a/TAO/CIAO/DAnCE/ciao/Swapping_Servant_Home_Impl_T.cpp
+++ b/TAO/CIAO/DAnCE/ciao/Swapping_Servant_Home_Impl_T.cpp
@@ -24,8 +24,7 @@ namespace CIAO
COMP_EXEC_VAR,
COMP_SVNT>::Swapping_Servant_Home_Impl (
EXEC * exe,
- SWapping_Container * c
- )
+ Swapping_Container * c)
: Swapping_Servant_Home_Impl_Base (c),
executor_ (EXEC::_duplicate (exe))
{
@@ -185,6 +184,16 @@ namespace CIAO
)
ACE_THROW_SPEC ((CORBA::SystemException))
{
+ CORBA::Object_var hobj =
+ this->container_->get_objref (this
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (COMP::_nil ());
+
+ Components::CCMHome_var home =
+ Components::CCMHome::_narrow (hobj.in ()
+ ACE_ENV_ARG_PARAMETER);
+ ACE_CHECK_RETURN (COMP::_nil ());
+
const char* obj_id = "composition_name_home_name";
const char* repo_id = "repo_id";
@@ -201,14 +210,14 @@ namespace CIAO
ACE_ENV_ARG_PARAMETER);
ACE_CHECK_RETURN (COMP::_nil ());
- // @@ Jai, where is the "Dynamic_Servant_T"?
- //
- // @@ JAI, Bala i have fixed this.
- //
Dynamic_Component_Servant_Base *svt =
- new Dynamic_Component_Servant<COMP_SVNT> ();
+ new Dynamic_Component_Servant<COMP_SVNT, COMP_EXEC, COMP_EXEC_VAR> ();
+
+ ::Components::EnterpriseComponent_var _ciao_ec =
+ this->executor_->create (ACE_ENV_SINGLE_ARG_PARAMETER);
+ ACE_CHECK_RETURN (COMP::_nil ());
- this->container_.update_map (oid.in (), svt);
+ this->container_.update_map (oid.in (), home.in (), _ciao_ec.in (), svt);
return ho._retn ();
}