Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

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

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

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

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

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

CIAO specific extension, return a set of shared components.

Deployment::ComponentPlans * CIAO::NodeManager_Impl_Base::get_shared_components_i void   )  [protected, virtual]
 

Actual implementation of the <get_shared_components> IDL operation.

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

Initializes the NodeManager.

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

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

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

CIAO::Daemon defined attributes/operations.

Deployment::NodeApplicationManager_ptr CIAO::NodeManager_Impl_Base::preparePlan const Deployment::DeploymentPlan &plan  ACE_ENV_ARG_DECL_WITH_DEFAULTS  )  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 ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS   )  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 Sun Mar 5 16:04:52 2006 for DAnCE by  doxygen 1.3.9.1