summaryrefslogtreecommitdiff
path: root/CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h
diff options
context:
space:
mode:
Diffstat (limited to 'CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h')
-rw-r--r--CIAO/DAnCE/FaultCorrelationManager/FaultCorrelationManager_Impl.h46
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_;
};
}