#include <NodeManager_Impl.h>
Classes | |
struct | _ref_count_info |
struct | Component_Ids |
Public Types | |
typedef struct CIAO::NodeManager_Impl_Base::_ref_count_info | Ref_Count_Info |
Public Member Functions | |
NodeManager_Impl_Base (const char *name, CORBA::ORB_ptr orb, PortableServer::POA_ptr p, const char *nodeapp_loc, const char *nodeapp_options, int spawn_delay) | |
Constructor. | |
virtual void | init () |
Initializes the NodeManager. | |
virtual PortableServer::POA_ptr | _default_POA (void) |
POA operation.. | |
virtual char * | name () |
CIAO::Daemon defined attributes/operations. | |
virtual void | shutdown () |
virtual void | joinDomain (const Deployment::Domain &domain, Deployment::TargetManager_ptr manager, Deployment::Logger_ptr log) |
virtual void | leaveDomain () |
virtual ::Deployment::NodeApplicationManager_ptr | preparePlan (const Deployment::DeploymentPlan &plan) |
virtual void | destroyManager (Deployment::NodeApplicationManager_ptr appManager) |
virtual void | destroyPlan (const Deployment::DeploymentPlan &plan) |
virtual ::Deployment::ComponentPlans * | get_shared_components () |
CIAO specific extension, return a set of shared components. | |
virtual ::CORBA::Long | set_priority (const char *plan_id, const char *cid, const ::Deployment::Sched_Params &nm_params) |
virtual ::Components::FacetDescriptions * | get_all_facets (ACE_CString &name) |
virtual ::Components::ConsumerDescriptions * | get_all_consumers (ACE_CString &name) |
virtual void | set_all_facets (ACE_CString &name, const ::Components::FacetDescriptions_var &facets) |
virtual void | set_all_consumers (ACE_CString &name, const ::Components::ConsumerDescriptions_var &consumers) |
virtual void | push_component_id_info (Component_Ids comps) |
Component_Ids | get_component_detail () |
Protected Types | |
typedef ACE_Hash_Map_Manager_Ex < ACE_CString, Ref_Count_Info, ACE_Hash< ACE_CString > , ACE_Equal_To< ACE_CString > , ACE_Null_Mutex > | Reference_Count_Map |
typedef Reference_Count_Map::iterator | Ref_Count_Iterator |
typedef ACE_Hash_Map_Manager_Ex < ACE_CString, Components::FacetDescriptions_var, ACE_Hash< ACE_CString > , ACE_Equal_To< ACE_CString > , ACE_Null_Mutex > | Component_Facets_Map |
typedef ACE_Hash_Map_Manager_Ex < ACE_CString, Components::ConsumerDescriptions_var, ACE_Hash< ACE_CString > , ACE_Equal_To< ACE_CString > , ACE_Null_Mutex > | Component_Consumers_Map |
Protected Member Functions | |
virtual | ~NodeManager_Impl_Base (void) |
virtual ::CIAO::NodeApplicationManager_Impl_Base * | create_node_app_manager (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa)=0 |
virtual ::Deployment::ComponentPlans * | get_shared_components_i (void) |
Actual implementation of the get_shared_components IDL operation. | |
CORBA::StringSeq * | shared_components_seq (void) |
A helper method that convert ACE_Unbounded_Set to CORBA StringSeq. | |
Protected Attributes | |
CORBA::ORB_var | orb_ |
Keep a pointer to the managing ORB serving this servant. | |
PortableServer::POA_var | poa_ |
Keep a pointer to the managing POA. | |
CORBA::String_var | name_ |
My Canonical name. | |
CORBA::String_var | nodeapp_location_ |
NodeApplication location. | |
CORBA::String_var | nodeapp_options_ |
NodeApplication options. | |
PortableServer::POA_var | callback_poa_ |
Cached callback POA. | |
int | spawn_delay_ |
Spawn delay for the NodeAppMgr. | |
NAM_Map | map_ |
Reference_Count_Map | ref_count_map_ |
ACE_Unbounded_Set< ACE_CString > | shared_components_ |
A set to track the names of shared component instances. | |
Component_Facets_Map | comp_facets_map_ |
Component_Consumers_Map | comp_consumers_map_ |
auto_ptr< MonitorController > | monitor_controller_ |
The MonitorController pointer. | |
Component_Ids | components_ |
The set of Components. | |
Private Member Functions | |
bool | validate_plan (const Deployment::DeploymentPlan &plan) |
typedef ACE_Hash_Map_Manager_Ex<ACE_CString, Components::ConsumerDescriptions_var, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex> CIAO::NodeManager_Impl_Base::Component_Consumers_Map [protected] |
typedef ACE_Hash_Map_Manager_Ex<ACE_CString, Components::FacetDescriptions_var, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex> CIAO::NodeManager_Impl_Base::Component_Facets_Map [protected] |
Cached object references of ports (facets/consumers) of all components. This is useful for getting the port object references of "shared components". The key in the map is the component instance name.
typedef struct CIAO::NodeManager_Impl_Base::_ref_count_info CIAO::NodeManager_Impl_Base::Ref_Count_Info |
A struct that tracks the reference count of a particular component as well as the "child_plan_uuid" where the component is actually installed
typedef Reference_Count_Map::iterator CIAO::NodeManager_Impl_Base::Ref_Count_Iterator [protected] |
typedef ACE_Hash_Map_Manager_Ex<ACE_CString, Ref_Count_Info, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex> CIAO::NodeManager_Impl_Base::Reference_Count_Map [protected] |
A reference count map for the components installed on this node @TODO We should also keep the information about *where* the component is installed
CIAO::NodeManager_Impl_Base::NodeManager_Impl_Base | ( | const char * | name, | |
CORBA::ORB_ptr | orb, | |||
PortableServer::POA_ptr | p, | |||
const char * | nodeapp_loc, | |||
const char * | nodeapp_options, | |||
int | spawn_delay | |||
) |
Constructor.
CIAO::NodeManager_Impl_Base::~NodeManager_Impl_Base | ( | void | ) | [protected, virtual] |
Since this class is reference counted, making this destructor protected to enforce proper memory managment through the reference counting mechanism (i.e. to disallow calling operator delete() on an instance of this class.
PortableServer::POA_ptr CIAO::NodeManager_Impl_Base::_default_POA | ( | void | ) | [virtual] |
POA operation..
virtual ::CIAO::NodeApplicationManager_Impl_Base* CIAO::NodeManager_Impl_Base::create_node_app_manager | ( | CORBA::ORB_ptr | orb, | |
PortableServer::POA_ptr | poa | |||
) | [protected, pure virtual] |
Implemented in CIAO::NodeManager_Impl, and CIAO::Static_NodeManager_Impl.
void CIAO::NodeManager_Impl_Base::destroyManager | ( | Deployment::NodeApplicationManager_ptr | appManager | ) | [virtual] |
Reimplemented in CIAO::Static_NodeManager_Impl.
void CIAO::NodeManager_Impl_Base::destroyPlan | ( | const Deployment::DeploymentPlan & | plan | ) | [virtual] |
CIAO specific extension, which is particularly useful for dealing with shared components issue
Components::ConsumerDescriptions * CIAO::NodeManager_Impl_Base::get_all_consumers | ( | ACE_CString & | name | ) |
Components::FacetDescriptions * CIAO::NodeManager_Impl_Base::get_all_facets | ( | ACE_CString & | name | ) |
CIAO::NodeManager_Impl_Base::Component_Ids CIAO::NodeManager_Impl_Base::get_component_detail | ( | ) |
Deployment::ComponentPlans * CIAO::NodeManager_Impl_Base::get_shared_components | ( | ) |
CIAO specific extension, return a set of shared components.
Deployment::ComponentPlans * CIAO::NodeManager_Impl_Base::get_shared_components_i | ( | void | ) | [protected] |
Actual implementation of the get_shared_components
IDL operation.
void CIAO::NodeManager_Impl_Base::init | ( | ) | [virtual] |
Initializes the NodeManager.
void CIAO::NodeManager_Impl_Base::joinDomain | ( | const Deployment::Domain & | domain, | |
Deployment::TargetManager_ptr | manager, | |||
Deployment::Logger_ptr | log | |||
) | [virtual] |
void CIAO::NodeManager_Impl_Base::leaveDomain | ( | ) | [virtual] |
char * CIAO::NodeManager_Impl_Base::name | ( | ) | [virtual] |
CIAO::Daemon defined attributes/operations.
Deployment::NodeApplicationManager_ptr CIAO::NodeManager_Impl_Base::preparePlan | ( | const Deployment::DeploymentPlan & | plan | ) |
void CIAO::NodeManager_Impl_Base::push_component_id_info | ( | Component_Ids | comps | ) | [virtual] |
void CIAO::NodeManager_Impl_Base::set_all_consumers | ( | ACE_CString & | name, | |
const ::Components::ConsumerDescriptions_var & | consumers | |||
) | [virtual] |
void CIAO::NodeManager_Impl_Base::set_all_facets | ( | ACE_CString & | name, | |
const ::Components::FacetDescriptions_var & | facets | |||
) | [virtual] |
CORBA::Long CIAO::NodeManager_Impl_Base::set_priority | ( | const char * | plan_id, | |
const char * | cid, | |||
const ::Deployment::Sched_Params & | nm_params | |||
) |
RACE specific extension. Modify the priority of a node application process.
CORBA::StringSeq * CIAO::NodeManager_Impl_Base::shared_components_seq | ( | void | ) | [protected] |
A helper method that convert ACE_Unbounded_Set to CORBA StringSeq.
void CIAO::NodeManager_Impl_Base::shutdown | ( | ) | [virtual] |
bool CIAO::NodeManager_Impl_Base::validate_plan | ( | const Deployment::DeploymentPlan & | plan | ) | [private] |
Validate the child deployment plan. In particular, we are trying to verify that all the component instances within this child deployment plan have the same "server_resource_id" assigned.
Cached callback POA.
The set of Components.
NAM_Map CIAO::NodeManager_Impl_Base::map_ [protected] |
Cache reference of last NodeAppManager Deployment::NodeApplicationManager_var manager_;
The MonitorController pointer.
CORBA::String_var CIAO::NodeManager_Impl_Base::name_ [protected] |
My Canonical name.
NodeApplication location.
NodeApplication options.
CORBA::ORB_var CIAO::NodeManager_Impl_Base::orb_ [protected] |
Keep a pointer to the managing ORB serving this servant.
Keep a pointer to the managing POA.
A set to track the names of shared component instances.
int CIAO::NodeManager_Impl_Base::spawn_delay_ [protected] |
Spawn delay for the NodeAppMgr.