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:

[legend]
Collaboration diagram for CIAO::NodeManager_Impl_Base:

[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_Base * | create_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::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.
## 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:

- NodeManager_Impl.h
- NodeManager_Impl.cpp