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

CIAO::NodeApplicationManager_Impl Class Reference

#include <NodeApplicationManager_Impl.h>

Collaboration diagram for CIAO::NodeApplicationManager_Impl:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 NodeApplicationManager_Impl (CORBA::ORB_ptr o, PortableServer::POA_ptr p)
 Constructor.
virtual Deployment::Application_ptr startLaunch (const Deployment::Properties &configProperty, Deployment::Connections_out providedReference, CORBA::Boolean start ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, Deployment::ResourceNotAvailable, Deployment::StartError, Deployment::InvalidProperty)
virtual void destroyApplication (Deployment::Application_ptr ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, Deployment::StopError)
virtual PortableServer::ObjectId init (const char *nodeapp_location, const CORBA::ULong delay, const Deployment::DeploymentPlan &plan, const PortableServer::POA_ptr callback_poa ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, Deployment::InvalidProperty)
Deployment::NodeApplicationManager_ptr get_nodeapp_manager (void)

Protected Types

typedef ACE_Hash_Map_Manager_Ex<
ACE_CString, Components::CCMObject_var,
ACE_Hash< ACE_CString >,
ACE_Equal_To< ACE_CString >,
ACE_Null_Mutex
CCMComponent_Map
typedef CCMComponent_Map::iterator Component_Iterator

Protected Member Functions

virtual ~NodeApplicationManager_Impl (void)
 Destructor.
virtual Deployment::NodeApplication_ptr create_node_application (const ACE_CString &options ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, Deployment::ResourceNotAvailable, Deployment::StartError, Deployment::InvalidProperty)
virtual Deployment::Connectionscreate_connections (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, Deployment::ResourceNotAvailable, Deployment::StartError, Deployment::InvalidProperty)
void parse_config_value (ACE_CString &str ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, Deployment::InvalidProperty)

Protected Attributes

ACE_CString nodeapp_path_
CORBA::ORB_var orb_
PortableServer::POA_var poa_
Deployment::NodeApplicationManager_var objref_
PortableServer::POA_var callback_poa_
Deployment::NodeApplication_var nodeapp_
Deployment::DeploymentPlan plan_
CORBA::ULong spawn_delay_
CORBA::String_var nodeapp_command_op_
CCMComponent_Map component_map_
TAO_SYNCH_MUTEX lock_

Member Typedef Documentation

typedef ACE_Hash_Map_Manager_Ex<ACE_CString, Components::CCMObject_var, ACE_Hash<ACE_CString>, ACE_Equal_To<ACE_CString>, ACE_Null_Mutex> CIAO::NodeApplicationManager_Impl::CCMComponent_Map [protected]
 

typedef CCMComponent_Map::iterator CIAO::NodeApplicationManager_Impl::Component_Iterator [protected]
 


Constructor & Destructor Documentation

ACE_INLINE CIAO::NodeApplicationManager_Impl::NodeApplicationManager_Impl CORBA::ORB_ptr  o,
PortableServer::POA_ptr  p
 

Constructor.

CIAO::NodeApplicationManager_Impl::~NodeApplicationManager_Impl void   )  [protected, virtual]
 

Destructor.


Member Function Documentation

Deployment::Connections * CIAO::NodeApplicationManager_Impl::create_connections ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS   )  throw (CORBA::SystemException, Deployment::ResourceNotAvailable, Deployment::StartError, Deployment::InvalidProperty) [protected, virtual]
 

Deployment::NodeApplication_ptr CIAO::NodeApplicationManager_Impl::create_node_application const ACE_CString &options  ACE_ENV_ARG_DECL_WITH_DEFAULTS  )  throw (CORBA::SystemException, Deployment::ResourceNotAvailable, Deployment::StartError, Deployment::InvalidProperty) [protected, virtual]
 

virtual void CIAO::NodeApplicationManager_Impl::destroyApplication Deployment::Application_ptr  ACE_ENV_ARG_DECL_WITH_DEFAULTS  )  throw (CORBA::SystemException, Deployment::StopError) [virtual]
 

ACE_INLINE Deployment::NodeApplicationManager_ptr CIAO::NodeApplicationManager_Impl::get_nodeapp_manager void   ) 
 

PortableServer::ObjectId CIAO::NodeApplicationManager_Impl::init const char *  nodeapp_location,
const CORBA::ULong  delay,
const Deployment::DeploymentPlan plan,
const PortableServer::POA_ptr callback_poa  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, Deployment::InvalidProperty) [virtual]
 

A factory operation to create NodeApplicationManager interface, and return the object reference. Initialize the NodeApplicationManager. The current implementation of CIAO_NodeApplicationManager can only activate CIAO's own NodeApplication processes. You should specify the location (pathname) of the NodeApplication and the delay. CIAO_NodeApplicationManager should wait (in second) for NodeApplication to call back.

Parameters:
nodeapp_location A null-termiated char * string pointing to the pathname of a NodeApplication executable.
delay instructs how long (in second) a CIAO_NodeApplicationManager should wait for a newly spawned NodeApplication to pass back its IOR.
plan has all the information needed for the NodeAppManager to construct the application locally. Note, this includes the properties of the NodeApplication. For example, ORB config options etc.
callback_poa contains child poa created for the callback interface.
Returns:
NodeApplicationManager_ptr.

void CIAO::NodeApplicationManager_Impl::parse_config_value ACE_CString &str  ACE_ENV_ARG_DECL_WITH_DEFAULTS  )  throw (CORBA::SystemException, Deployment::InvalidProperty) [protected]
 

Find the configurations in the plan and prepare them to pass to the NodeApplication, from command line probably.

Deployment::Application_ptr CIAO::NodeApplicationManager_Impl::startLaunch const Deployment::Properties configProperty,
Deployment::Connections_out  providedReference,
CORBA::Boolean start  ACE_ENV_ARG_DECL
throw (CORBA::SystemException, Deployment::ResourceNotAvailable, Deployment::StartError, Deployment::InvalidProperty) [virtual]
 

1. First Map properties to TAO/CIAO specific property/configurations 2. Necessary property checking (needed?) 3. Call create_nade_application to spawn new process. 4. Initialize the NodeApplication. 5. get the provided connection endpoints back and return them.


Member Data Documentation

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

CCMComponent_Map CIAO::NodeApplicationManager_Impl::component_map_ [protected]
 

TAO_SYNCH_MUTEX CIAO::NodeApplicationManager_Impl::lock_ [protected]
 

Deployment::NodeApplication_var CIAO::NodeApplicationManager_Impl::nodeapp_ [protected]
 

CORBA::String_var CIAO::NodeApplicationManager_Impl::nodeapp_command_op_ [protected]
 

ACE_CString CIAO::NodeApplicationManager_Impl::nodeapp_path_ [protected]
 

Deployment::NodeApplicationManager_var CIAO::NodeApplicationManager_Impl::objref_ [protected]
 

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

Deployment::DeploymentPlan CIAO::NodeApplicationManager_Impl::plan_ [protected]
 

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

CORBA::ULong CIAO::NodeApplicationManager_Impl::spawn_delay_ [protected]
 


The documentation for this class was generated from the following files:
Generated on Sat Aug 6 03:54:42 2005 for DAnCE by  doxygen 1.3.9.1