diff options
Diffstat (limited to 'CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h')
-rw-r--r-- | CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h | 46 |
1 files changed, 44 insertions, 2 deletions
diff --git a/CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h b/CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h index 2e229310f01..5ceb8f932eb 100644 --- a/CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h +++ b/CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h @@ -13,10 +13,13 @@ #ifndef FAULTCORRELATIONMANAGER_IMPL_H_ #define FAULTCORRELATIONMANAGER_IMPL_H_ +#include "ace/Map_Manager.h" #include "tao/ORB.h" #include "FaultCorrelationManager_export.h" #include "Deployment/FaultCorrelationManagerS.h" #include "Deployment/Deployment_common.h" +#include "Deployment/Deployment_ExecutionManagerC.h" +//#include "Deployment/Deployment_DomainApplicationManagerC.h" namespace DAnCE { @@ -30,6 +33,7 @@ namespace DAnCE public: // the fixed listener port is caused by the usage of CCM Object locator FaultCorrelationManager_Impl (CORBA::ORB_ptr orb, + Deployment::ExecutionManager_ptr exec_mgr, const PROPERTY_MAP &options); virtual ~FaultCorrelationManager_Impl(); @@ -37,12 +41,50 @@ namespace DAnCE virtual void stop_failver_unit (const char * fou_id); // methods from inherited interfaces - virtual void proc_failure (const char *, - const char *); + + // FaultNotification + virtual void proc_failure (const char * object_id, + const char * node_id); + + // ExecutionManager + virtual ::Deployment::DomainApplicationManager_ptr preparePlan ( + const ::Deployment::DeploymentPlan & plan, + ::Deployment::ResourceCommitmentManager_ptr resourceCommitment); + + virtual ::Deployment::DomainApplicationManagers * getManagers ( + void); + + virtual void destroyManager ( + ::Deployment::DomainApplicationManager_ptr manager); + + private: + + void process_deployment_plan (const Deployment::DeploymentPlan & plan); + + private: + typedef ACE_Map_Manager<ACE_CString, + Deployment::DomainApplicationManager_var, + ACE_Null_Mutex> TDomainManagers; + + typedef ACE_Map_Manager<ACE_CString, + ACE_CString, + ACE_Null_Mutex> TStringMap; + + typedef TStringMap TInstancesOfPlan; + typedef TStringMap TNodeComponents; private: CORBA::ORB_var orb_; + + Deployment::ExecutionManager_var exec_mgr_; + PROPERTY_MAP properties_; + + TDomainManagers dams_; + + TInstancesOfPlan instances_; + + TNodeComponents nodes_; }; } |