summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-05-27 03:56:16 +0000
committerjai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2005-05-27 03:56:16 +0000
commit1785d4704ca74b9784ade7bbb2094c9a1c2eede2 (patch)
tree1dcd5b2d181c55822ec05779b599baf111d95172
parentc85e10bb07695084324bd70099bb72dbcea3ab89 (diff)
downloadATCD-1785d4704ca74b9784ade7bbb2094c9a1c2eede2.tar.gz
Thu May 26 22:55:26 2005 Jaiganesh B <jai@dre.vanderbilt.edu>
-rw-r--r--TAO/CIAO/ChangeLog7
-rw-r--r--TAO/CIAO/DAnCE/ciao/Servant_Impl_Base.cpp31
2 files changed, 25 insertions, 13 deletions
diff --git a/TAO/CIAO/ChangeLog b/TAO/CIAO/ChangeLog
index 72f976b6c1d..8916f78bf03 100644
--- a/TAO/CIAO/ChangeLog
+++ b/TAO/CIAO/ChangeLog
@@ -1,3 +1,10 @@
+Thu May 26 22:55:26 2005 Jaiganesh B <jai@dre.vanderbilt.edu>
+
+ * DAnCE/ciao/Servant_Impl_Base.cpp:
+
+ Added code to deactivate facets when component
+ is getting removed.
+
Thu May 26 20:41:04 2005 Jaiganesh B <jai@dre.vanderbilt.edu>
* DAnCE/ciao/Home_Servant_Impl_T.cpp:
diff --git a/TAO/CIAO/DAnCE/ciao/Servant_Impl_Base.cpp b/TAO/CIAO/DAnCE/ciao/Servant_Impl_Base.cpp
index e46c7c930f4..9352bd2fee9 100644
--- a/TAO/CIAO/DAnCE/ciao/Servant_Impl_Base.cpp
+++ b/TAO/CIAO/DAnCE/ciao/Servant_Impl_Base.cpp
@@ -65,7 +65,6 @@ namespace CIAO
ACE_THROW_SPEC ((CORBA::SystemException,
Components::RemoveFailure))
{
- /*
Components::FacetDescriptions_var facets =
this->get_all_facets (ACE_ENV_SINGLE_ARG_PARAMETER);
ACE_CHECK;
@@ -74,23 +73,29 @@ namespace CIAO
CORBA::ULong i = 0;
for (i = 0; i < facet_len; ++i)
{
- PortableServer::ObjectId_var oid =
- this->container_->the_facet_cons_POA ()->reference_to_id
- (facets[i]->facet_ref ()
- ACE_ENV_ARG_PARAMETER);
- ACE_CHECK;
-
+ PortableServer::ObjectId_var id =
+ this->container_->the_facet_cons_POA ()->reference_to_id
+ (facets[i]->facet_ref () ACE_ENV_ARG_PARAMETER);
+
CIAO::Servant_Activator *sa =
this->container_->ports_servant_activator ();
- sa->update_port_activator (oid ACE_ENV_ARG_PARAMETER);
- this->container_->deactivate_facet (oid ACE_ENV_ARG_PARAMETER);
+ sa->update_port_activator (id ACE_ENV_ARG_PARAMETER);
+
+ ACE_TRY
+ {
+ this->container_->the_facet_cons_POA ()->deactivate_object
+ (id ACE_ENV_ARG_PARAMETER);
+ ACE_TRY_CHECK;
+ }
+ ACE_CATCHANY
+ {
+ ACE_PRINT_EXCEPTION (ACE_ANY_EXCEPTION,
+ "Facet not active\n");
+ }
+ ACE_ENDTRY;
}
- Components::SessionComponent_var temp = this->get_executor ();
- temp->ccm_passivate (ACE_ENV_SINGLE_ARG_PARAMETER);
- */
-
Components::SessionComponent_var temp = this->get_executor ();
temp->ccm_remove (ACE_ENV_SINGLE_ARG_PARAMETER);