diff options
author | William R. Otte <wotte@dre.vanderbilt.edu> | 2006-02-01 21:22:42 +0000 |
---|---|---|
committer | William R. Otte <wotte@dre.vanderbilt.edu> | 2006-02-01 21:22:42 +0000 |
commit | 492683d86cd68b94b65ea372266c63746f332473 (patch) | |
tree | 3deb7bc0b180d4991382925a967869c9db20c009 | |
parent | bfc72856edf06916e62dda20665515b0f85a0e67 (diff) | |
download | ATCD-492683d86cd68b94b65ea372266c63746f332473.tar.gz |
Wed Feb 1 21:21:35 UTC 2006 William Otte <wotte@dre.vanderbilt.edu>
-rw-r--r-- | TAO/CIAO/ChangeLog | 18 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/NodeManager/BaseMonitor.h | 83 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.cpp | 16 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.h | 22 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/NodeManager/MonitorCB.cpp | 4 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/NodeManager/MonitorCB.h | 73 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/NodeManager/MonitorController.cpp | 101 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/NodeManager/MonitorController.h | 157 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/TargetManager/DomainDataManager.cpp | 12 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/TargetManager/DomainDataManager.h | 168 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.cpp | 2 | ||||
-rw-r--r-- | TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.h | 2 | ||||
-rw-r--r-- | TAO/CIAO/examples/Hello/descriptors_RTCCM/NodeManagerMap.dat | 2 | ||||
-rw-r--r-- | TAO/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl | 2 | ||||
-rw-r--r-- | TAO/CIAO/tools/Config_Handlers/STD_CPD_Handler.h | 12 |
15 files changed, 372 insertions, 302 deletions
diff --git a/TAO/CIAO/ChangeLog b/TAO/CIAO/ChangeLog index 51af9e715f4..7713979b8a9 100644 --- a/TAO/CIAO/ChangeLog +++ b/TAO/CIAO/ChangeLog @@ -1,3 +1,21 @@ +Wed Feb 1 21:21:35 UTC 2006 William Otte <wotte@dre.vanderbilt.edu> + + * DAnCE/NodeManager/BaseMonitor.h + * DAnCE/NodeManager/CIAO_Monitor.cpp + * DAnCE/NodeManager/CIAO_Monitor.h + * DAnCE/NodeManager/MonitorCB.cpp + * DAnCE/NodeManager/MonitorCB.h + * DAnCE/NodeManager/MonitorController.cpp + * DAnCE/NodeManager/MonitorController.h + * DAnCE/TargetManager/DomainDataManager.cpp + * DAnCE/TargetManager/DomainDataManager.h + * DAnCE/TargetManager/TargetManager_exec.cpp + * DAnCE/TargetManager/TargetManager_exec.h + + Wraps the TargetManager/Monitors inside the CIAO namespace. + Thanks to Nilabja Roy (nilabjar@dre.vanderbilt.edu) for + making these changes. + Wed Feb 1 20:42:42 UTC 2006 William Otte <wotte@dre.vanderbilt.edu> * CIDLC/ServantSourceGenerator.cpp diff --git a/TAO/CIAO/DAnCE/NodeManager/BaseMonitor.h b/TAO/CIAO/DAnCE/NodeManager/BaseMonitor.h index 94223a655b2..2282dd381d9 100644 --- a/TAO/CIAO/DAnCE/NodeManager/BaseMonitor.h +++ b/TAO/CIAO/DAnCE/NodeManager/BaseMonitor.h @@ -5,7 +5,7 @@ * @file BaseMonitor.h * @brief The BaseMonitor.h file. * This is an abstract class containing the interface to the Monitor plug-in - * + * * @author Nilabja R <nilabjar@dre.vanderbilt.edu> */ //---------------------------------------------------------------------------------- @@ -15,44 +15,49 @@ #include "tao/ORB.h" #include "TargetManagerC.h" -class MonitorBase +namespace CIAO { - public: - virtual ~MonitorBase () {}; - - /** @function initialize_params - * @param domain The Initital domain for this host - * @param target_manager TargetManager_ptr - * @param interval The time interval after whic updates need to be send. - * @description This function is called by the controller to initialize - * parameters. - */ - virtual int initialize_params ( - ::Deployment::Domain& domain, - ::Deployment::TargetManager_ptr target_manager, - int interval - )=0; - /** @function start - * @param ORB_ptr The ORB pointer - * @description This function is called by the controller - * to start up the monitor. - */ - virtual int start (CORBA::ORB_ptr)=0; - /** @function stop - * @description This function is called by the controller - * to stop the monitor. - */ - virtual int stop ()=0; - /** @function get_current_data - * @return ::Deployment::Domain* The current Domain data - * @description This function is called by the controller - * to get the current data. - */ - virtual ::Deployment::Domain* get_current_data ()=0; -}; - - -extern "C" ACE_Proper_Export_Flag MonitorBase * -createMonitor (void); + + class MonitorBase + { + public: + virtual ~MonitorBase () {}; + + /** @function initialize_params + * @param domain The Initital domain for this host + * @param target_manager TargetManager_ptr + * @param interval The time interval after whic updates need to be send. + * @description This function is called by the controller to initialize + * parameters. + */ + virtual int initialize_params ( + ::Deployment::Domain& domain, + ::Deployment::TargetManager_ptr target_manager, + int interval + )=0; + /** @function start + * @param ORB_ptr The ORB pointer + * @description This function is called by the controller + * to start up the monitor. + */ + virtual int start (CORBA::ORB_ptr)=0; + /** @function stop + * @description This function is called by the controller + * to stop the monitor. + */ + virtual int stop ()=0; + /** @function get_current_data + * @return ::Deployment::Domain* The current Domain data + * @description This function is called by the controller + * to get the current data. + */ + virtual ::Deployment::Domain* get_current_data ()=0; + }; + + extern "C" ACE_Proper_Export_Flag CIAO::MonitorBase * + createMonitor (void); + +}; // CIAO + #endif /* MONITOR_BASEH */ diff --git a/TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.cpp b/TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.cpp index 17a1bd3c1c4..7c5485adf82 100644 --- a/TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.cpp +++ b/TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.cpp @@ -15,21 +15,21 @@ #include "ace/OS_NS_stdio.h" -extern "C" ACE_Proper_Export_Flag MonitorBase * createMonitor () +extern "C" ACE_Proper_Export_Flag CIAO::MonitorBase * CIAO::createMonitor () { - return new CIAO_Monitor (); + return new CIAO::CIAO_Monitor (); } -CIAO_Monitor::CIAO_Monitor () +CIAO::CIAO_Monitor::CIAO_Monitor () { } /// The Desctructor -CIAO_Monitor::~CIAO_Monitor () +CIAO::CIAO_Monitor::~CIAO_Monitor () { } -int CIAO_Monitor::initialize_params ( +int CIAO::CIAO_Monitor::initialize_params ( ::Deployment::Domain& domain, ::Deployment::TargetManager_ptr target_manager, int interval @@ -42,17 +42,17 @@ int CIAO_Monitor::initialize_params ( return 0; } -int CIAO_Monitor::start (CORBA::ORB_ptr) +int CIAO::CIAO_Monitor::start (CORBA::ORB_ptr) { return 0; } -int CIAO_Monitor::stop () +int CIAO::CIAO_Monitor::stop () { return 0; } -::Deployment::Domain* CIAO_Monitor::get_current_data () +::Deployment::Domain* CIAO::CIAO_Monitor::get_current_data () { if (CIAO::debug_level () > 9) { diff --git a/TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.h b/TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.h index 1a0918656ec..66a075f9fa7 100644 --- a/TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.h +++ b/TAO/CIAO/DAnCE/NodeManager/CIAO_Monitor.h @@ -22,16 +22,26 @@ #include <memory> -class ReceiverThread; /** - * @class CIAO_Monitor + * @namespace CIAO * - * @brief The Monitor class + * @brief The top level CIAO namespace * */ -class CIAO_Monitor : public MonitorBase + +namespace CIAO { + class ReceiverThread; + + /** + * @class CIAO_Monitor + * + * @brief The Monitor class + * + */ + class CIAO_Monitor : public MonitorBase + { public: /** @function Constructor @@ -90,5 +100,7 @@ class CIAO_Monitor : public MonitorBase /// The Domain data structure auto_ptr <Deployment::Domain> current_domain_; -}; + }; + +}; // CIAO #endif /* CIAO_MONITORH */ diff --git a/TAO/CIAO/DAnCE/NodeManager/MonitorCB.cpp b/TAO/CIAO/DAnCE/NodeManager/MonitorCB.cpp index b51a6aae154..5bd59627d2e 100644 --- a/TAO/CIAO/DAnCE/NodeManager/MonitorCB.cpp +++ b/TAO/CIAO/DAnCE/NodeManager/MonitorCB.cpp @@ -15,7 +15,7 @@ #include "CIAO_common.h" -MonitorCB::MonitorCB (CORBA::ORB_ptr orb, +CIAO::MonitorCB::MonitorCB (CORBA::ORB_ptr orb, Deployment::TargetManager_ptr target, int interval ):orb_ (orb), @@ -24,7 +24,7 @@ MonitorCB::MonitorCB (CORBA::ORB_ptr orb, { } -int MonitorCB::update_data (::Deployment::Domain& data) +int CIAO::MonitorCB::update_data (::Deployment::Domain& data) { CORBA::StringSeq elements; elements.length (0); diff --git a/TAO/CIAO/DAnCE/NodeManager/MonitorCB.h b/TAO/CIAO/DAnCE/NodeManager/MonitorCB.h index 93dc4237920..7c94eab51fb 100644 --- a/TAO/CIAO/DAnCE/NodeManager/MonitorCB.h +++ b/TAO/CIAO/DAnCE/NodeManager/MonitorCB.h @@ -16,46 +16,59 @@ #include "TargetManagerC.h" + + /** - * @class MonitorCB + * @namespace CIAO * - * @brief Updates data back to the TM. + * @brief The top level CIAO namespace * */ -class MonitorCB +namespace CIAO { - public: - /** - * @constructor - * @param _orb The ORB pointer - * @param The TargetManager reference - * @param interval The time interval to sent update - */ - MonitorCB (CORBA::ORB_ptr _orb,Deployment::TargetManager_ptr,int interval); - /** - * @function update_data - * @param data Contains the updated Domain data - * @return int indicates success. - * @description This function is called by the monitor to - * update Domain data, which is then sent to - * TM. - */ + /** + * @class MonitorCB + * + * @brief Updates data back to the TM. + * + */ + + class MonitorCB + { + public: + /** + * @constructor + * @param _orb The ORB pointer + * @param The TargetManager reference + * @param interval The time interval to sent update + */ + MonitorCB (CORBA::ORB_ptr _orb,Deployment::TargetManager_ptr,int interval); + /** + * @function update_data + * @param data Contains the updated Domain data + * @return int indicates success. + * @description This function is called by the monitor to + * update Domain data, which is then sent to + * TM. + */ int update_data (::Deployment::Domain& data); - private: - // The ORB pointer - CORBA::ORB_ptr orb_; + private: + /// The ORB pointer + CORBA::ORB_ptr orb_; + + /// The Target Manager pointer to send back the + /// update + ::Deployment::TargetManager_ptr target_mgr_; - /// The Target Manager pointer to send back the - /// update - ::Deployment::TargetManager_ptr target_mgr_; + /// The interval after which updates need to be send + int interval_; - /// The interval after which updates need to be send - int interval_; + }; -}; + /// The Callback function pointer + typedef int (MonitorCB::*CallBack) (::Deployment::Domain &); -/// The Callback function pointer -typedef int (MonitorCB::*CallBack) (::Deployment::Domain &); +}; // CIAO namespace #endif /* MONITOR_CBH */ diff --git a/TAO/CIAO/DAnCE/NodeManager/MonitorController.cpp b/TAO/CIAO/DAnCE/NodeManager/MonitorController.cpp index 43ba6ed9975..59727210f16 100644 --- a/TAO/CIAO/DAnCE/NodeManager/MonitorController.cpp +++ b/TAO/CIAO/DAnCE/NodeManager/MonitorController.cpp @@ -20,25 +20,24 @@ #include "ace/DLL.h" #include "ace/SString.h" -#if !defined (__ACE_INLINE__) -#include "MonitorController.inl" -#endif /* !defined INLINE */ - -typedef MonitorBase* (*MonitorFactory) (void); +namespace CIAO +{ + typedef MonitorBase* (*MonitorFactory) (void); -/// for the CIAO monitor -const char* monitor_lib_name = "ciaomonlib"; + /// for the CIAO monitor + const char* monitor_lib_name = "ciaomonlib"; -// The interval after which update will be sent. -// This value will sent by the EM in the later implementation -const int interval = 10; + // The interval after which update will be sent. + // This value will sent by the EM in the later implementation + const int interval = 10; -static const char* factory_func = "createMonitor"; + static const char* factory_func = "createMonitor"; +}; -MonitorController::MonitorController (CORBA::ORB_ptr orb, - ::Deployment::Domain& domain, - ::Deployment::TargetManager_ptr target - ) +CIAO::MonitorController::MonitorController (CORBA::ORB_ptr orb, + ::Deployment::Domain& domain, + ::Deployment::TargetManager_ptr target + ) : target_facet_i_ (::Deployment::TargetManager::_duplicate (target)), terminate_flag_ (0), orb_ (orb), @@ -46,11 +45,9 @@ MonitorController::MonitorController (CORBA::ORB_ptr orb, { } -int MonitorController::init() +int CIAO::MonitorController::svc (void) { - ACE_DEBUG ((LM_DEBUG , "Calling MonitorController Init\n")); - - ACE_DLL dll; + ACE_DLL dll; // forming the library name ACE_CString lib_name = ACE_DLL_PREFIX; @@ -72,7 +69,7 @@ int MonitorController::init() if (factory == 0) ACE_ERROR_RETURN ((LM_ERROR, "%p", - "dll.symbol"), + "dll.symbol"), -1); { ACE_TRACE ((LM_DEBUG "Inside the init call\n")); @@ -85,46 +82,58 @@ int MonitorController::init() // Start the Monitor monitor_->start (orb_); - std::auto_ptr <MonitorCB> monitor_callback ( - new MonitorCB (orb_, - target_facet_i_.in (), - interval)); + auto_ptr <CIAO::MonitorCB> monitor_callback (new CIAO::MonitorCB (orb_, + target_facet_i_.in (), + interval)); // The loop in which UpdateData is called while (!terminating ()) - { - // data will be updated in intervals of 10 secs. - // in the latest version of spec , this value will - // come from Execution Manager - ACE_OS::sleep (interval); -// ACE_DEBUG ((LM_DEBUG , "=The Terminate is %d\n", terminate_flag_)); - ::Deployment::Domain* domain = - monitor_->get_current_data (); - - monitor_callback->update_data (*domain); - } + { + // data will be updated in intervals of 10 secs. + // in the latest version of spec , this value will + // come from Execution Manager + ACE_OS::sleep (interval); + // ACE_DEBUG ((LM_DEBUG , "=The Terminate is %d\n", terminate_flag_)); + ::Deployment::Domain* domain = + monitor_->get_current_data (); + + monitor_callback->update_data (*domain); + } monitor_->stop (); } dll.close (); + if (CIAO::debug_level () > 9) + { + ACE_DEBUG ((LM_DEBUG , "Terminating Monitor\n")); + } return 0; - } +CIAO::MonitorController::~MonitorController () +{ + terminate (); + wait (); +} -int MonitorController::svc (void) +void CIAO::MonitorController::terminate () { - init (); - if (CIAO::debug_level () > 9) - { - ACE_DEBUG ((LM_DEBUG , "Terminating Monitor\n")); - } - return 0; + // make the terminate flag false + ACE_GUARD (ACE_SYNCH_MUTEX, + guard, + lock_ + ); + ACE_DEBUG ((LM_DEBUG , "WITHIN TERMINATE CALL ......")); + terminate_flag_=1; } -MonitorController::~MonitorController () +bool CIAO::MonitorController::terminating () { - terminate (); - wait (); + ACE_GUARD_RETURN (ACE_SYNCH_MUTEX, + guard, + lock_, + 0 + ); + return terminate_flag_; } diff --git a/TAO/CIAO/DAnCE/NodeManager/MonitorController.h b/TAO/CIAO/DAnCE/NodeManager/MonitorController.h index 4c3eadeb274..bc3d5a11a3c 100644 --- a/TAO/CIAO/DAnCE/NodeManager/MonitorController.h +++ b/TAO/CIAO/DAnCE/NodeManager/MonitorController.h @@ -21,89 +21,90 @@ #include "ace/Synch_Traits.h" #include "ace/Synch.h" -class MonitorBase; + /** - * @class MonitorController - * - * @brief The Controller class + * @namespace CIAO * - * Acts as a facade to the Monitor - * module + * @brief The top level CIAO namespace * */ -class MonitorController : public ACE_Task_Base -{ - public: - /** - * @function svc. - * @brief The main function containing the - * entire activity. - * - * This function runs in the context of the - * thread - * @return int The status of the function - */ - int svc (void); - /** - * @function terminate. - * @brief The terminate function - * - * This function is called to terminate the - * thread - */ - void terminate (); - - - /// The Constructor. - MonitorController (CORBA::ORB_ptr orb, - ::Deployment::Domain& domain, - ::Deployment::TargetManager_ptr target - ); - /// The init function. This function initializes the monitor - - /** - * @function init. - * @brief The init function - * - * This function is called to during initialization - */ - int init(); - - ~MonitorController (); - protected: - - /** - * @function terminating. - * @brief returns the terminating flag - * @return bool The terminting state of the thread - */ - bool terminating (); - /// The monitor object - auto_ptr <MonitorBase> monitor_; - - /// The TargetManagerImpl object - CIAO::TargetManagerImpl_var target_impl_cmp_; - - /// The TargetManager Facet .... - Deployment::TargetManager_var target_facet_i_; - - /// The terminate flag_ - bool terminate_flag_; - - //Thread Mutex for synchronizing call - ACE_SYNCH_MUTEX lock_; - - // the ORB pointer .. - CORBA::ORB_ptr orb_; - - /// The initial domain - ::Deployment::Domain initial_domain_; -}; - -#if defined (__ACE_INLINE__) -#include "MonitorController.inl" -#endif /* defined INLINE */ +namespace CIAO +{ + class MonitorBase; + + /** + * @class MonitorController + * + * @brief The Controller class + * + * Acts as a facade to the Monitor + * module + * + */ + class MonitorController : public ACE_Task_Base + { + public: + /** + * @function svc. + * @brief The main function containing the + * entire activity. + * + * This function runs in the context of the + * thread + * @return int The status of the function + */ + int svc (void); + /** + * @function terminate. + * @brief The terminate function + * + * This function is called to terminate the + * thread + */ + void terminate (); + + + /// The Constructor. + MonitorController (CORBA::ORB_ptr orb, + ::Deployment::Domain& domain, + ::Deployment::TargetManager_ptr target + ); + + ~MonitorController (); + protected: + + /** + * @function terminating. + * @brief returns the terminating flag + * @return bool The terminting state of the thread + */ + bool terminating (); + + /// The monitor object + auto_ptr <MonitorBase> monitor_; + + /// The TargetManagerImpl object + CIAO::TargetManagerImpl_var target_impl_cmp_; + + /// The TargetManager Facet .... + Deployment::TargetManager_var target_facet_i_; + + /// The terminate flag_ + bool terminate_flag_; + + //Thread Mutex for synchronizing call + ACE_SYNCH_MUTEX lock_; + + // the ORB pointer .. + CORBA::ORB_ptr orb_; + + /// The initial domain + ::Deployment::Domain initial_domain_; + }; + +}; // CIAO + #endif diff --git a/TAO/CIAO/DAnCE/TargetManager/DomainDataManager.cpp b/TAO/CIAO/DAnCE/TargetManager/DomainDataManager.cpp index 2d89ba83a37..57130b90fa4 100644 --- a/TAO/CIAO/DAnCE/TargetManager/DomainDataManager.cpp +++ b/TAO/CIAO/DAnCE/TargetManager/DomainDataManager.cpp @@ -19,7 +19,7 @@ const char * domain_file_name = "Domain.cdd"; -int DomainDataManager::update_domain (const ::CORBA::StringSeq &, +int CIAO::DomainDataManager::update_domain (const ::CORBA::StringSeq &, const ::Deployment::Domain & domainSubset, ::Deployment::DomainUpdateKind ) { @@ -67,7 +67,7 @@ int DomainDataManager::update_domain (const ::CORBA::StringSeq &, return 0; } -DomainDataManager:: +CIAO::DomainDataManager:: DomainDataManager (CORBA::ORB_ptr orb, ::Deployment::TargetManager_ptr target) : orb_ (CORBA::ORB::_duplicate (orb)), @@ -83,26 +83,26 @@ DomainDataManager (CORBA::ORB_ptr orb, call_all_node_managers (); } -::Deployment::Domain* DomainDataManager::get_current_domain () +::Deployment::Domain* CIAO::DomainDataManager::get_current_domain () { ::Deployment::Domain * retval = new ::Deployment::Domain (current_domain_); return retval; } -::Deployment::Domain* DomainDataManager::get_initial_domain () +::Deployment::Domain* CIAO::DomainDataManager::get_initial_domain () { ::Deployment::Domain * retval = new ::Deployment::Domain (initial_domain_); return retval; } -int DomainDataManager::readin_domain_data () +int CIAO::DomainDataManager::readin_domain_data () { // here read in Domain data ... // return 0; } -int DomainDataManager::call_all_node_managers () +int CIAO::DomainDataManager::call_all_node_managers () { if ( this->deployment_config_.init ("NodeDetails.dat") == -1 ) { diff --git a/TAO/CIAO/DAnCE/TargetManager/DomainDataManager.h b/TAO/CIAO/DAnCE/TargetManager/DomainDataManager.h index 3229f27bae1..2a54c217f9f 100644 --- a/TAO/CIAO/DAnCE/TargetManager/DomainDataManager.h +++ b/TAO/CIAO/DAnCE/TargetManager/DomainDataManager.h @@ -18,91 +18,101 @@ #include "Deployment_Configuration.h" /** - * @class DomainDataManager + * @namespace CIAO * - * @brief Responsible for maintaining the Domain Information + * @brief The main CIAO namespace * - * It maintains both the Current Domain Information as well - * as the Initial domain at full capacity. */ -class DomainDataManager +namespace CIAO { - - public : - /** - * @operation updateDomain - * @brief This function is called by the other classes to update - * current domain data. - * @param elements The string sequence of elements - * being updated - * @param domainSubset The subset of the actual Domain to be updated - * @param updateKind Specifies the update type eg. add, delete, update - * - */ - int update_domain (const ::CORBA::StringSeq & elements, - const ::Deployment::Domain & domainSubset, - ::Deployment::DomainUpdateKind updateKind - ); /** - * @operation getInitialDomain - * @brief This function is called the Executor code - * to get the Original Domain data. - * @return Domain* The Initial Domain + * @class DomainDataManager * + * @brief Responsible for maintaining the Domain Information + * + * It maintains both the Current Domain Information as well + * as the Initial domain at full capacity. */ - ::Deployment::Domain* get_initial_domain (); - - /** - * @operation getCurrentDomain - * @brief This function is called the Executor code - * to get the Current Domain data. - * @return Domain* The Current Domain - */ - ::Deployment::Domain* get_current_domain (); - - - /** - * @operation Constructor - * @param orb The orb pointer - * @param target The Target Manager Object Reference - */ - DomainDataManager (CORBA::ORB_ptr orb, - ::Deployment::TargetManager_ptr target - ); - - protected: - - /** - * @operation readinDomainData - * @brief It will read the initial Domain data from - * XML files. - */ - int readin_domain_data (); - - /** - * @operation call_all_node_managers - * @brief This function calls all NM and gives them - * the sub-domain - */ - int call_all_node_managers (); - - /// The ORB pointer - CORBA::ORB_var orb_; - - /// The Deployment Configuration - CIAO::Deployment_Configuration deployment_config_; - - /// The Initial Domain - contains resources - /// at total capacity - ::Deployment::Domain initial_domain_; - - - /// The Current Domain - contains resources - /// at current capacity - ::Deployment::Domain current_domain_; - - /// The Target Manager Context - ::Deployment::TargetManager_var target_mgr_; -}; + class DomainDataManager + { + + public : + /** + * @operation updateDomain + * @brief This function is called by the other classes to update + * current domain data. + * @param elements The string sequence of elements + * being updated + * @param domainSubset The subset of the actual Domain to be updated + * @param updateKind Specifies the update type eg. add, delete, update + * + */ + int update_domain (const ::CORBA::StringSeq & elements, + const ::Deployment::Domain & domainSubset, + ::Deployment::DomainUpdateKind updateKind + ); + /** + * @operation getInitialDomain + * @brief This function is called the Executor code + * to get the Original Domain data. + * @return Domain* The Initial Domain + * + */ + ::Deployment::Domain* get_initial_domain (); + + /** + * @operation getCurrentDomain + * @brief This function is called the Executor code + * to get the Current Domain data. + * @return Domain* The Current Domain + */ + ::Deployment::Domain* get_current_domain (); + + + /** + * @operation Constructor + * @param orb The orb pointer + * @param target The Target Manager Object Reference + */ + DomainDataManager (CORBA::ORB_ptr orb, + ::Deployment::TargetManager_ptr target + ); + + protected: + + /** + * @operation readinDomainData + * @brief It will read the initial Domain data from + * XML files. + */ + int readin_domain_data (); + + /** + * @operation call_all_node_managers + * @brief This function calls all NM and gives them + * the sub-domain + */ + int call_all_node_managers (); + + /// The ORB pointer + CORBA::ORB_var orb_; + + /// The Deployment Configuration + CIAO::Deployment_Configuration deployment_config_; + + /// The Initial Domain - contains resources + /// at total capacity + ::Deployment::Domain initial_domain_; + + + /// The Current Domain - contains resources + /// at current capacity + ::Deployment::Domain current_domain_; + + /// The Target Manager Context + ::Deployment::TargetManager_var target_mgr_; + }; + +}; // CIAO #endif /* DOMAIN_DATA_MGRH */ diff --git a/TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.cpp b/TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.cpp index 443f22d313c..552197adf0e 100644 --- a/TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.cpp +++ b/TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.cpp @@ -41,7 +41,7 @@ namespace CIDL_TargetManager_i CIAO::TargetManagerImpl::_narrow (object.in ()); ::Deployment::TargetManager_var target = target_impl->provide_targetMgr (); - dataManager_.reset (new DomainDataManager (orb, target.in ())); + dataManager_.reset (new CIAO::DomainDataManager (orb, target.in ())); } TargetManager_exec_i::~TargetManager_exec_i (void) diff --git a/TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.h b/TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.h index 588f982cbd7..a756f67ec5e 100644 --- a/TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.h +++ b/TAO/CIAO/DAnCE/TargetManager/TargetManager_exec.h @@ -183,7 +183,7 @@ namespace CIDL_TargetManager_i TargetManagerImpl_exec_i * _exec; ///The pointer to the Domain Manager - std::auto_ptr<DomainDataManager> dataManager_; + std::auto_ptr<CIAO::DomainDataManager> dataManager_; /// The CORBA ORB ... CORBA::ORB_var orb_; diff --git a/TAO/CIAO/examples/Hello/descriptors_RTCCM/NodeManagerMap.dat b/TAO/CIAO/examples/Hello/descriptors_RTCCM/NodeManagerMap.dat new file mode 100644 index 00000000000..fe88523971e --- /dev/null +++ b/TAO/CIAO/examples/Hello/descriptors_RTCCM/NodeManagerMap.dat @@ -0,0 +1,2 @@ +SenderNode corbaloc:iiop:localhost:60001/NodeManager +ReceiverNode corbaloc:iiop:localhost:60002/NodeManager diff --git a/TAO/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl b/TAO/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl index 3a94c8b99e9..a790fef1be0 100644 --- a/TAO/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl +++ b/TAO/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl @@ -16,7 +16,7 @@ $daemons = 2; @ports = ( 60001, 60002 ); @iorfiles = ( "NodeApp1.ior", "NodeApp2.ior" ); $status = 0; -$dat_file = "TestNodeManagerMap.dat"; +$dat_file = "NodeManagerMap.dat"; $cdp_file = "DeploymentPlan.cdp"; $controller_exec = "$CIAO_ROOT/examples/Hello/Sender/starter"; diff --git a/TAO/CIAO/tools/Config_Handlers/STD_CPD_Handler.h b/TAO/CIAO/tools/Config_Handlers/STD_CPD_Handler.h index 66db939ec49..654fb0155ca 100644 --- a/TAO/CIAO/tools/Config_Handlers/STD_CPD_Handler.h +++ b/TAO/CIAO/tools/Config_Handlers/STD_CPD_Handler.h @@ -58,20 +58,20 @@ namespace CIAO const ComponentPackageDescription &desc, ::Deployment::ComponentPackageDescription &toconfig); -//@@Note: This part has yet to be added in the future -// ComponentPortDescription -// component_package_descr ( -// const Deployment::ComponentPortDescription& src); + //@@Note: This part has yet to be added in the future + // ComponentPortDescription + // component_package_descr ( + // const Deployment::ComponentPortDescription& src); private: // disable the default constructor STD_CPD_Handler () :xml_helper_ (0) { } - + XML_Helper *xml_helper_; }; - } + } } #include /**/ "ace/post.h" |