diff options
Diffstat (limited to 'CIAO/DAnCE/NodeManager/Node_Manager_Module.h')
-rw-r--r-- | CIAO/DAnCE/NodeManager/Node_Manager_Module.h | 68 |
1 files changed, 37 insertions, 31 deletions
diff --git a/CIAO/DAnCE/NodeManager/Node_Manager_Module.h b/CIAO/DAnCE/NodeManager/Node_Manager_Module.h index 8bb4e1efdce..92e9f6319d2 100644 --- a/CIAO/DAnCE/NodeManager/Node_Manager_Module.h +++ b/CIAO/DAnCE/NodeManager/Node_Manager_Module.h @@ -18,19 +18,22 @@ #include /**/ "ace/pre.h" -#include "ace/Service_Config.h" +#include "DAnCE_NodeManager_Module_Export.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#include "ace/Service_Config.h" #include "ace/Vector_T.h" #include "ace/Map_Manager.h" #include "ace/Null_Mutex.h" #include "tao/ORB.h" -#include "tao/PortableServer/PortableServer.h" +#include "tao/PortableServer/POAC.h" #include "orbsvcs/CosNamingC.h" -#include "DAnCE/DAnCE/Deployment_common.h" +#include "tao/Object_Loader.h" +#include "Deployment/DAnCE_Loader.h" +#include "DAnCE/Deployment/Deployment_common.h" namespace DAnCE { @@ -45,9 +48,30 @@ namespace DAnCE * * This class runs the node manager instance */ -class DAnCE_NodeManager_Module +class DAnCE_NodeManager_Module_Export DAnCE_NodeManager_Module + : public DAnCE::DAnCE_Object_Loader { public: + struct SOptions + { + bool process_ns_; + const ACE_TCHAR* process_ns_file_; + bool create_plan_ns_; + const ACE_TCHAR* create_plan_ns_ior_; + bool rebind_plan_ns_; + const ACE_TCHAR* rebind_plan_ns_ior_; + bool port_indirection_; + ACE_Vector<ACE_TString> node_managers_; + const ACE_TCHAR * cs_path_; + unsigned int timeout_; + CORBA::Boolean standalone_; + const ACE_TCHAR * server_args_; + const ACE_TCHAR * domain_nc_; + const ACE_TCHAR * instance_nc_; + + SOptions(); + }; + /// Constructor. DAnCE_NodeManager_Module (void); @@ -56,35 +80,15 @@ class DAnCE_NodeManager_Module /// Overload the base class method to create a new instance /// of a DAnCE_NodeManager_Module object. - CORBA::Object_ptr init (CORBA::ORB_ptr orb, - int argc, - ACE_TCHAR *argv []); + virtual CORBA::Object_ptr create_object (CORBA::ORB_ptr orb, + int argc, + ACE_TCHAR *argv []); - private: - const char * usage (void); - - bool parse_args (int argc, ACE_TCHAR *argv []); - - struct SOptions - { - bool process_ns_; - const ACE_TCHAR* process_ns_file_; - bool create_plan_ns_; - const ACE_TCHAR* create_plan_ns_ior_; - bool rebind_plan_ns_; - const ACE_TCHAR* rebind_plan_ns_ior_; - bool port_indirection_; - ACE_Vector<ACE_TString> node_managers_; - const ACE_TCHAR * cs_path_; - unsigned int timeout_; - CORBA::Boolean standalone_; - const ACE_TCHAR * server_args_; - const ACE_TCHAR * domain_nc_; - const ACE_TCHAR * instance_nc_; - - SOptions(); - }; + virtual const char * usage (void); + virtual bool parse_args (int argc, ACE_TCHAR *argv []); + + private: void register_value_factories (void); void create_poas (void); void create_nm_properties (DAnCE::PROPERTY_MAP &props); @@ -103,6 +107,8 @@ class DAnCE_NodeManager_Module PortableServer::POA_var nm_poa_; }; +ACE_FACTORY_DECLARE (DAnCE_NodeManager_Module, DAnCE_NodeManager_Module) + #include /**/ "ace/post.h" #endif /* NODE_MANAGER_MODULE_H */ |