CIAO::NodeManager_Impl_Base Class Reference

#include <NodeManager_Impl.h>

Inheritance diagram for CIAO::NodeManager_Impl_Base:

Inheritance graph
[legend]
Collaboration diagram for CIAO::NodeManager_Impl_Base:

Collaboration graph
[legend]
List of all members.

Public Types

typedef 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) throw (CORBA::SystemException)
 Constructor.
virtual void init () throw (CORBA::SystemException)
 Initializes the NodeManager.
virtual PortableServer::POA_ptr _default_POA (void)
 POA operation..
virtual char * name () throw (CORBA::SystemException)
 CIAO::Daemon defined attributes/operations.
virtual void shutdown () throw (CORBA::SystemException)
virtual void joinDomain (const Deployment::Domain &domain, Deployment::TargetManager_ptr manager, Deployment::Logger_ptr log) throw (CORBA::SystemException)
virtual void leaveDomain () throw (CORBA::SystemException)
virtual ::Deployment::NodeApplicationManager_ptr preparePlan (const Deployment::DeploymentPlan &plan) throw (CORBA::SystemException, Deployment::StartError, Deployment::PlanError)
virtual void destroyManager (Deployment::NodeApplicationManager_ptr appManager) throw (CORBA::SystemException, Deployment::StopError, Deployment::InvalidReference)
virtual void destroyPlan (const Deployment::DeploymentPlan &plan) throw (::CORBA::SystemException, ::Deployment::StopError)
virtual ::Deployment::ComponentPlans * get_shared_components () throw (::CORBA::SystemException)
 CIAO specific extension, return a set of shared components.
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)

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_Basecreate_node_app_manager (CORBA::ORB_ptr orb, PortableServer::POA_ptr poa)=0 throw (CORBA::SystemException)
virtual ::Deployment::ComponentPlans * get_shared_components_i (void)
 Actual implementation of the <get_shared_components> IDL operation.
CORBA::StringSeqshared_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_CStringshared_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< MonitorControllermonitor_controller_
 The MonitorController pointer.

Private Member Functions

bool validate_plan (const Deployment::DeploymentPlan &plan)

Classes

struct  _ref_count_info

Member Typedef Documentation

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


Constructor & Destructor Documentation

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 
) throw (CORBA::SystemException)

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.


Member Function Documentation

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 
) throw (CORBA::SystemException) [protected, pure virtual]

Implemented in CIAO::NodeManager_Impl, and CIAO::Static_NodeManager_Impl.

void CIAO::NodeManager_Impl_Base::destroyManager ( Deployment::NodeApplicationManager_ptr  appManager  )  throw (CORBA::SystemException, Deployment::StopError, Deployment::InvalidReference) [virtual]

Reimplemented in CIAO::Static_NodeManager_Impl.

void CIAO::NodeManager_Impl_Base::destroyPlan ( const Deployment::DeploymentPlan &  plan  )  throw (::CORBA::SystemException, ::Deployment::StopError) [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  ) 

Deployment::ComponentPlans * CIAO::NodeManager_Impl_Base::get_shared_components (  )  throw (::CORBA::SystemException)

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 (  )  throw (CORBA::SystemException) [virtual]

Initializes the NodeManager.

void CIAO::NodeManager_Impl_Base::joinDomain ( const Deployment::Domain &  domain,
Deployment::TargetManager_ptr  target,
Deployment::Logger_ptr  log 
) throw (CORBA::SystemException) [virtual]

Activate the Monitor Controller to

void CIAO::NodeManager_Impl_Base::leaveDomain (  )  throw (CORBA::SystemException) [virtual]

char * CIAO::NodeManager_Impl_Base::name (  )  throw (CORBA::SystemException) [virtual]

CIAO::Daemon defined attributes/operations.

Deployment::NodeApplicationManager_ptr CIAO::NodeManager_Impl_Base::preparePlan ( const Deployment::DeploymentPlan &  plan  )  throw (CORBA::SystemException, Deployment::StartError, Deployment::PlanError)

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::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 (  )  throw (CORBA::SystemException) [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.


Member Data Documentation

PortableServer::POA_var CIAO::NodeManager_Impl_Base::callback_poa_ [protected]

Cached callback POA.

Component_Consumers_Map CIAO::NodeManager_Impl_Base::comp_consumers_map_ [protected]

Component_Facets_Map CIAO::NodeManager_Impl_Base::comp_facets_map_ [protected]

NAM_Map CIAO::NodeManager_Impl_Base::map_ [protected]

Cache reference of last NodeAppManager Deployment::NodeApplicationManager_var manager_;

auto_ptr<MonitorController> CIAO::NodeManager_Impl_Base::monitor_controller_ [protected]

The MonitorController pointer.

CORBA::String_var CIAO::NodeManager_Impl_Base::name_ [protected]

My Canonical name.

CORBA::String_var CIAO::NodeManager_Impl_Base::nodeapp_location_ [protected]

NodeApplication location.

CORBA::String_var CIAO::NodeManager_Impl_Base::nodeapp_options_ [protected]

NodeApplication options.

CORBA::ORB_var CIAO::NodeManager_Impl_Base::orb_ [protected]

Keep a pointer to the managing ORB serving this servant.

PortableServer::POA_var CIAO::NodeManager_Impl_Base::poa_ [protected]

Keep a pointer to the managing POA.

Reference_Count_Map CIAO::NodeManager_Impl_Base::ref_count_map_ [protected]

ACE_Unbounded_Set<ACE_CString> CIAO::NodeManager_Impl_Base::shared_components_ [protected]

A set to track the names of shared component instances.

int CIAO::NodeManager_Impl_Base::spawn_delay_ [protected]

Spawn delay for the NodeAppMgr.


The documentation for this class was generated from the following files:
Generated on Wed Apr 19 03:56:27 2006 for DAnCE by  doxygen 1.4.6-4