diff options
author | jai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-05-22 18:39:39 +0000 |
---|---|---|
committer | jai <jai@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2003-05-22 18:39:39 +0000 |
commit | 9004bc9651baab3739cbb0a04cb38e45d2963208 (patch) | |
tree | 6758e4424b6e6f97be7409d902b6b436a6a40ea6 | |
parent | 18431db6003c703b063760290265017e2947e293 (diff) | |
download | ATCD-9004bc9651baab3739cbb0a04cb38e45d2963208.tar.gz |
Thu May 22 11:35:51 2003 Jaiganesh Balasubramanian <jai@doc.ece.uci.edu>
3 files changed, 29 insertions, 12 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog index a43bd000d7a..b5ac831bbc8 100644 --- a/TAO/ChangeLog +++ b/TAO/ChangeLog @@ -1,3 +1,10 @@ +Thu May 22 11:35:51 2003 Jaiganesh Balasubramanian <jai@doc.ece.uci.edu> + + * orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/server.cpp: + * orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/Basic.h: + Made Changes to reference count the servant so that it lasts as + long as the POA needs it. + Thu May 22 13:02:43 2003 Balachandran Natarajan <bala@dre.vanderbilt.edu> * tao/ObjectKey_Table.cpp (unbind_i): Beefed up error checking. diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/Basic.h b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/Basic.h index 6633daff0e4..6ddc01606b7 100644 --- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/Basic.h +++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/Basic.h @@ -21,6 +21,7 @@ class LB_Basic_Test; /// Implement the Test::Basic interface class Basic : public virtual POA_Test::Basic + , public virtual PortableServer::RefCountServantBase { public: /// Constructor diff --git a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/server.cpp b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/server.cpp index 658cb320279..92fcf89e753 100644 --- a/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/server.cpp +++ b/TAO/orbsvcs/tests/LoadBalancing/GenericFactory/Application_Controlled/server.cpp @@ -21,18 +21,27 @@ main (int argc, char *argv[]) if (lb_server.create_object_group () == -1) return 1; - Basic basic_servant1 (lb_server.object_group (), - lb_server.load_manager (), - lb_server.orb (), - location1); - - Basic basic_servant2 (lb_server.object_group (), - lb_server.load_manager (), - lb_server.orb (), - location2); - - if (lb_server.register_servant (&basic_servant1, location1) == -1 - || lb_server.register_servant (&basic_servant2, location2) == -1) + Basic *basic_servant1; + Basic *basic_servant2; + + ACE_NEW_RETURN (basic_servant1, + Basic (lb_server.object_group (), + lb_server.load_manager (), + lb_server.orb (), + location1), + 1); + PortableServer::ServantBase_var owner_transfer1(basic_servant1); + + ACE_NEW_RETURN (basic_servant2, + Basic (lb_server.object_group (), + lb_server.load_manager (), + lb_server.orb (), + location2), + 1); + PortableServer::ServantBase_var owner_transfer2(basic_servant2); + + if (lb_server.register_servant (basic_servant1, location1) == -1 + || lb_server.register_servant (basic_servant2, location2) == -1) { (void) lb_server.destroy (); return 1; |