RT_Builder.cpp

Go to the documentation of this file.
00001 // $Id: RT_Builder.cpp 76589 2007-01-25 18:04:11Z elliott_c $
00002 
00003 #include "orbsvcs/Notify/RT_Builder.h"
00004 
00005 #include "ace/Auto_Ptr.h"
00006 #include "ace/Dynamic_Service.h"
00007 #include "orbsvcs/Notify/ETCL_FilterFactory.h"
00008 #include "orbsvcs/Notify/RT_POA_Helper.h"
00009 #include "orbsvcs/Notify/Properties.h"
00010 #include "orbsvcs/NotifyExtC.h"
00011 #include "orbsvcs/Notify/Object.h"
00012 
00013 ACE_RCSID (RT_Notify,
00014            TAO_Notify_RT_Builder,
00015            "$Id: RT_Builder.cpp 76589 2007-01-25 18:04:11Z elliott_c $")
00016 
00017 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00018 
00019 TAO_Notify_RT_Builder::TAO_Notify_RT_Builder (void)
00020 {
00021 }
00022 
00023 TAO_Notify_RT_Builder::~TAO_Notify_RT_Builder ()
00024 {
00025 }
00026 
00027 void
00028 TAO_Notify_RT_Builder::apply_thread_pool_concurrency (TAO_Notify_Object& object
00029                                                        , const NotifyExt::ThreadPoolParams& tp_params)
00030 {
00031   TAO_Notify_RT_POA_Helper* proxy_poa = 0;
00032 
00033   // Bootstrap EC Proxy POA
00034   ACE_NEW_THROW_EX (proxy_poa,
00035                     TAO_Notify_RT_POA_Helper (),
00036                     CORBA::NO_MEMORY ());
00037 
00038   ACE_Auto_Ptr<TAO_Notify_POA_Helper> auto_proxy_poa (proxy_poa);
00039 
00040   PortableServer::POA_var default_poa = TAO_Notify_PROPERTIES::instance ()->default_poa ();
00041 
00042   proxy_poa->init (default_poa.in (), tp_params);
00043 
00044   // Give ownership of proxy_poa
00045   object.set_proxy_poa (auto_proxy_poa.release ());
00046 }
00047 
00048 void
00049 TAO_Notify_RT_Builder::apply_lane_concurrency (TAO_Notify_Object& object
00050                                                 , const NotifyExt::ThreadPoolLanesParams& tpl_params)
00051 {
00052   TAO_Notify_RT_POA_Helper* proxy_poa = 0;
00053 
00054   // Bootstrap EC Proxy POA
00055   ACE_NEW_THROW_EX (proxy_poa,
00056                     TAO_Notify_RT_POA_Helper (),
00057                     CORBA::NO_MEMORY ());
00058 
00059   ACE_Auto_Ptr<TAO_Notify_POA_Helper> auto_proxy_poa (proxy_poa);
00060 
00061   PortableServer::POA_var default_poa = TAO_Notify_PROPERTIES::instance ()->default_poa ();
00062 
00063   proxy_poa->init (default_poa.in (), tpl_params);
00064 
00065   // Give ownership of proxy_poa
00066   object.set_proxy_poa (auto_proxy_poa.release ());
00067 }
00068 
00069 TAO_END_VERSIONED_NAMESPACE_DECL

Generated on Tue Feb 2 17:45:29 2010 for TAO_CosNotification by  doxygen 1.4.7