diff options
Diffstat (limited to 'TAO/CIAO')
42 files changed, 412 insertions, 411 deletions
diff --git a/TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.h b/TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.h index bd3b09b51f9..f4b828b3f20 100644 --- a/TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.h +++ b/TAO/CIAO/DAnCE/DomainApplicationManager/Deployment_Configuration.h @@ -23,7 +23,7 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "DeploymentC.h" +#include "ciao/NodeManagerC.h" #include "DomainApplicationManager/DomainApplicationManager_Export.h" #include "ace/SString.h" #include "tao/Valuetype/ValueBase.h" diff --git a/TAO/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp b/TAO/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp index f0e3b10ac89..f9d05ef013e 100644 --- a/TAO/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp +++ b/TAO/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.cpp @@ -1,7 +1,8 @@ // $Id$ #include "DomainApplicationManager_Impl.h" -//#include "NodeManager/NodeManagerC.h" +#include "ExecutionManager/Execution_Manager_Impl.h" +#include "ciao/NodeApplicationManagerC.h" #include "ace/Null_Mutex.h" #include "ace/OS_NS_string.h" #include "ace/SString.h" diff --git a/TAO/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.h b/TAO/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.h index 837c6b4291d..070e7da80bf 100644 --- a/TAO/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.h +++ b/TAO/CIAO/DAnCE/DomainApplicationManager/DomainApplicationManager_Impl.h @@ -28,18 +28,23 @@ #include "ace/Vector_T.h" #include "ace/Functor.h" #include "ace/OS_NS_string.h" -#include "DeploymentS.h" +#include "ciao/DomainApplicationManagerS.h" +#include "ciao/Deployment_common.h" #include "tao/Valuetype/ValueBase.h" #include "tao/Valuetype/Valuetype_Adapter_Impl.h" #include "Deployment_Configuration.h" #include "DomainApplicationManager_Export.h" -#include "ExecutionManager/Execution_Manager_Impl.h" #include "ciao/CIAO_common.h" namespace CIAO { + namespace Execution_Manager + { + class Execution_Manager_Impl; + } + /** * @class DomainApplicationManager_Impl * @@ -58,7 +63,7 @@ namespace CIAO // port objrefs of components within this plan enum Connection_Search_Type { - External_Connections, + External_Connections, Internal_Connections }; @@ -220,7 +225,7 @@ namespace CIAO // The input parameter is a *new_plan* which has the // same UUID of the existing running plan. - virtual void + virtual void perform_redeployment ( const Deployment::DeploymentPlan & plan ACE_ENV_ARG_DECL_WITH_DEFAULTS) @@ -256,12 +261,12 @@ namespace CIAO /** * Construct <Component_Binding_Info> struct for the component instance. - * + * * @para name component instance name * @para child_uuid child plan uuid string */ CIAO::Component_Binding_Info * - populate_binding_info (const ACE_CString& name, + populate_binding_info (const ACE_CString& name, const ACE_CString& child_uuid); /** @@ -281,9 +286,9 @@ namespace CIAO void synchronize_shared_components_with_node_managers (void); /** - * A helper function to add a list of shared components into + * A helper function to add a list of shared components into * the cached shared component list. - * + * * @para shared A list of shared components to be added. */ void add_shared_components (const Deployment::ComponentPlans & shared); @@ -291,7 +296,7 @@ namespace CIAO /** * A private function to check whether a component is in the shared * component list. - * + * * @para name The name of a component instance. */ bool is_shared_component (const char * name); diff --git a/TAO/CIAO/DAnCE/ExecutionManager/DAM_Map.h b/TAO/CIAO/DAnCE/ExecutionManager/DAM_Map.h index 2be163c6908..1e6914db7f3 100644 --- a/TAO/CIAO/DAnCE/ExecutionManager/DAM_Map.h +++ b/TAO/CIAO/DAnCE/ExecutionManager/DAM_Map.h @@ -13,17 +13,16 @@ #define CIAO_DAM_MAP_H #include /**/ "ace/pre.h" -#include "ace/Null_Mutex.h" +#include "ciao/DomainApplicationManagerC.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#include "ace/Null_Mutex.h" #include "ace/Hash_Map_Manager.h" -#include "ciao/DeploymentC.h" #include "ace/SString.h" - namespace CIAO { namespace Execution_Manager @@ -52,7 +51,7 @@ namespace CIAO get_dams (ACE_ENV_SINGLE_ARG_DECL); bool unbind_dam (const ACE_CString &str); - + size_t size (void); private: diff --git a/TAO/CIAO/DAnCE/ExecutionManager/Execution_Manager_Impl.h b/TAO/CIAO/DAnCE/ExecutionManager/Execution_Manager_Impl.h index 523413e1c91..ac25bce9a1c 100644 --- a/TAO/CIAO/DAnCE/ExecutionManager/Execution_Manager_Impl.h +++ b/TAO/CIAO/DAnCE/ExecutionManager/Execution_Manager_Impl.h @@ -16,7 +16,7 @@ #define CIAO_EXECUTION_MANAGER_IMPL_H #include /**/ "ace/pre.h" -#include "Interfaces/ExecutionManagerS.h" +#include "Interfaces/ExecutionManagerDaemonS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -77,7 +77,7 @@ namespace CIAO // Below method is CIAO specific extension, please see the IDL // definition for more details. - virtual void + virtual void destroyManagerByPlan (const char * plan_uuid ACE_ENV_ARG_DECL_WITH_DEFAULTS) ACE_THROW_SPEC ((::CORBA::SystemException, @@ -123,23 +123,23 @@ namespace CIAO /// Add shared component information. /// This call will be made by DomainApplicationManager. - virtual void + virtual void add_shared_component (const Component_Binding_Info & binding); /// Remove shared component - virtual void + virtual void remove_shared_component (const Component_Binding_Info & binding); /// If the input component <name> was found in the internal /// cached shared component list, and the plan_uuid also matches, - /// then this member function returns <true>, otherwise it + /// then this member function returns <true>, otherwise it /// returns <false>. virtual bool is_component_running (const char * name, const char * plan_uuid); protected: /// Return the NodeApplication hosting the given biding - virtual Deployment::NodeApplication_ptr + virtual Deployment::NodeApplication_ptr find_node_application (const Component_Binding_Info & binding) ACE_THROW_SPEC (( ::CORBA::SystemException, diff --git a/TAO/CIAO/DAnCE/Interfaces/ExecutionManager.idl b/TAO/CIAO/DAnCE/Interfaces/ExecutionManagerDaemon.idl index cdd47c24d1b..121901c4b21 100644 --- a/TAO/CIAO/DAnCE/Interfaces/ExecutionManager.idl +++ b/TAO/CIAO/DAnCE/Interfaces/ExecutionManagerDaemon.idl @@ -1,15 +1,14 @@ // $Id$ /** - * @file ExecutionManager.idl + * @file ExecutionManagerDaemon.idl * * @brief Simple interface to control the ExecutionManager. This * interface currently provides an additional method called shutdown * to terminate the process cleanly. - * */ -#include "Deployment.idl" +#include "ciao/ExecutionManager.idl" module CIAO { diff --git a/TAO/CIAO/DAnCE/Interfaces/Interfaces.mpc b/TAO/CIAO/DAnCE/Interfaces/Interfaces.mpc index 0b42adc33f2..18597c42a6f 100644 --- a/TAO/CIAO/DAnCE/Interfaces/Interfaces.mpc +++ b/TAO/CIAO/DAnCE/Interfaces/Interfaces.mpc @@ -5,24 +5,24 @@ project (ExecutionManager_stub): ciao_component_dnc { sharedname = ExecutionManager_stub - idlflags += -Wb,stub_export_macro=ExecutionManager_stub_Export + idlflags += -Wb,stub_export_macro=ExecutionManager_stub_Export idlflags += -Wb,stub_export_include=ExecutionManager_stub_export.h dynamicflags = EXECUTIONMANAGER_STUB_BUILD_DLL IDL_Files { - ExecutionManager.idl + ExecutionManagerDaemon.idl } Source_Files { - ExecutionManagerC.cpp + ExecutionManagerDaemonC.cpp } } project (NodeManager_stub): ciao_component_dnc { sharedname = NodeManager_stub - idlflags += -Wb,stub_export_macro=NodeManager_stub_Export + idlflags += -Wb,stub_export_macro=NodeManager_stub_Export idlflags += -Wb,stub_export_include=NodeManager_stub_export.h idlflags += -Wb,skel_export_macro=NodeManager_svnt_Export idlflags += -Wb,skel_export_include=NodeManager_svnt_export.h @@ -30,10 +30,10 @@ project (NodeManager_stub): ciao_component_dnc { dynamicflags = NODEMANAGER_STUB_BUILD_DLL IDL_Files { - NodeManager.idl + NodeManagerDaemon.idl } Source_Files { - NodeManagerC.cpp + NodeManagerDaemonC.cpp } -}
\ No newline at end of file +} diff --git a/TAO/CIAO/DAnCE/Interfaces/NodeManager.idl b/TAO/CIAO/DAnCE/Interfaces/NodeManagerDaemon.idl index ea964a4e14b..2b433a16100 100644 --- a/TAO/CIAO/DAnCE/Interfaces/NodeManager.idl +++ b/TAO/CIAO/DAnCE/Interfaces/NodeManagerDaemon.idl @@ -1,12 +1,12 @@ // $Id$ /** - * @file NodeManager.idl + * @file NodeManagerDaemon.idl * * @brief Controling interface for managing and controling CIAO daemon. */ -#include "ciao/Deployment.idl" +#include "ciao/NodeManager.idl" module CIAO { @@ -17,7 +17,7 @@ module CIAO * it's an easy way of combining features. In the future we could * move this definition into Deployment.idl. */ - interface NodeManager : Deployment::NodeManager + interface NodeManagerDaemon : Deployment::NodeManager { // Canonical name of this daemon readonly attribute string name; diff --git a/TAO/CIAO/DAnCE/NodeApplicationManager/NodeApplicationManager_Impl.h b/TAO/CIAO/DAnCE/NodeApplicationManager/NodeApplicationManager_Impl.h index d5dd57d0972..70fe6f8e709 100644 --- a/TAO/CIAO/DAnCE/NodeApplicationManager/NodeApplicationManager_Impl.h +++ b/TAO/CIAO/DAnCE/NodeApplicationManager/NodeApplicationManager_Impl.h @@ -28,7 +28,7 @@ #include "ace/SString.h" #include "ace/Hash_Map_Manager_T.h" #include "ciao/NodeApp_CB_Impl.h" -#include "ciao/DeploymentS.h" +#include "ciao/NodeApplicationManagerS.h" #include "ciao/CIAO_common.h" #include "CIAO_NAM_Export.h" #include "ImplementationInfo.h" diff --git a/TAO/CIAO/DAnCE/NodeManager/NodeManager.mpc b/TAO/CIAO/DAnCE/NodeManager/NodeManager.mpc index 960e6703f2d..65c26b4adaf 100644 --- a/TAO/CIAO/DAnCE/NodeManager/NodeManager.mpc +++ b/TAO/CIAO/DAnCE/NodeManager/NodeManager.mpc @@ -8,12 +8,12 @@ project(NodeManager_svnt): ciao_component_dnc, iortable, ifr_client, dance_exten libs += NodeManager_stub NodeApplicationManager TargetManager_stub CIAO_NoOp_Configurator includes += $(CIAO_ROOT)/ciao $(CIAO_ROOT)/DAnCE/Interfaces $(CIAO_ROOT)/DAnCE/TargetManager dynamicflags = NODEMANAGER_SVNT_BUILD_DLL - + IDL_Files { } - + Source_Files { - ../Interfaces/NodeManagerS.cpp + ../Interfaces/NodeManagerDaemonS.cpp NodeManager_Impl.cpp NAM_Map.cpp MonitorController.cpp diff --git a/TAO/CIAO/DAnCE/NodeManager/NodeManager_Impl.h b/TAO/CIAO/DAnCE/NodeManager/NodeManager_Impl.h index bae08351a45..55ed65c5c0d 100644 --- a/TAO/CIAO/DAnCE/NodeManager/NodeManager_Impl.h +++ b/TAO/CIAO/DAnCE/NodeManager/NodeManager_Impl.h @@ -22,7 +22,7 @@ #define CIAO_NODEMANAGER_IMPL_H #include /**/ "ace/pre.h" -#include "Interfaces/NodeManagerS.h" +#include "Interfaces/NodeManagerDaemonS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -48,11 +48,11 @@ namespace CIAO * @brief Servant implementation CIAO's daemon process control * interface * - * This class implements the CIAO:NodeManager interface. + * This class implements the CIAO:NodeManagerDaemon interface. * */ class NodeManager_svnt_Export NodeManager_Impl_Base - : public virtual POA_CIAO::NodeManager + : public virtual POA_CIAO::NodeManagerDaemon { public: /// A struct that tracks the reference count of a particular diff --git a/TAO/CIAO/DAnCE/NodeManager/Node_Manager.cpp b/TAO/CIAO/DAnCE/NodeManager/Node_Manager.cpp index 7318939fe16..ecfa53d3645 100644 --- a/TAO/CIAO/DAnCE/NodeManager/Node_Manager.cpp +++ b/TAO/CIAO/DAnCE/NodeManager/Node_Manager.cpp @@ -99,7 +99,7 @@ write_IOR(const char* ior) bool register_with_ns (const char * name_context, CORBA::ORB_ptr orb, - CIAO::NodeManager_ptr obj + CIAO::NodeManagerDaemon_ptr obj ACE_ENV_ARG_DECL) { // Naming Service related operations @@ -184,11 +184,11 @@ main (int argc, char *argv[]) -1); PortableServer::ServantBase_var safe_daemon (node_manager_servant); - + node_manager_servant->init (); - + // Implicit activation - CIAO::NodeManager_var node_manager = + CIAO::NodeManagerDaemon_var node_manager = node_manager_servant->_this (); CORBA::String_var str = diff --git a/TAO/CIAO/DAnCE/Plan_Launcher/Plan_Launcher.cpp b/TAO/CIAO/DAnCE/Plan_Launcher/Plan_Launcher.cpp index ab0ea432153..3841c980792 100644 --- a/TAO/CIAO/DAnCE/Plan_Launcher/Plan_Launcher.cpp +++ b/TAO/CIAO/DAnCE/Plan_Launcher/Plan_Launcher.cpp @@ -5,7 +5,7 @@ #include "ace/Get_Opt.h" #include <iostream> -#include "Interfaces/ExecutionManagerC.h" +#include "DAnCE/Interfaces/ExecutionManagerDaemonC.h" namespace CIAO { @@ -20,7 +20,7 @@ namespace CIAO const char* dap_ior_filename = 0; const char* dap_ior = 0; - enum mode_type { + enum mode_type { pl_mode_start, pl_mode_interactive, pl_mode_stop_by_dam, @@ -94,15 +94,15 @@ namespace CIAO } } - if ((mode != pl_mode_stop_by_dam) && + if ((mode != pl_mode_stop_by_dam) && (mode != pl_mode_stop_by_uuid) && - (package_url == 0) && + (package_url == 0) && (new_package_url ==0)) { usage (argv[0]); return false; } - + return true; } @@ -153,32 +153,32 @@ namespace CIAO if (parse_args (argc, argv) == false) return -1; - - + + Plan_Launcher_i launcher; - + if (!launcher.init (use_naming ? 0 : ior_file, orb.in ())) { ACE_ERROR ((LM_ERROR, "(%P|%t) Plan_Launcher: Error initializing the EM.\n")); return -1; } - + ::Deployment::DomainApplicationManager_var dapp_mgr; - + if (mode == pl_mode_start || mode == pl_mode_interactive) // initial deployment { const char* uuid = launcher.launch_plan (package_url); - + if (uuid == 0) { ACE_ERROR ((LM_ERROR, "(%P|%t) Plan_Launcher: Error launching plan\n")); return -1; } - + ACE_DEBUG ((LM_DEBUG, "Plan_Launcher returned UUID is %s\n", uuid)); dapp_mgr = launcher.get_dam (uuid); - + // Write out DAM ior if requested if (mode == pl_mode_start) write_dap_ior (orb.in (), dapp_mgr.in ()); diff --git a/TAO/CIAO/DAnCE/Plan_Launcher/Plan_Launcher_Impl.h b/TAO/CIAO/DAnCE/Plan_Launcher/Plan_Launcher_Impl.h index 8f4f3c7d127..e91711332d4 100644 --- a/TAO/CIAO/DAnCE/Plan_Launcher/Plan_Launcher_Impl.h +++ b/TAO/CIAO/DAnCE/Plan_Launcher/Plan_Launcher_Impl.h @@ -1,8 +1,8 @@ -/** +/** * $Id$ * @file Plan_Launcher_Impl.h * @author Will Otte <wotte@dre.vanderbilt.edu> - * + * * Contains the Plan_Launcher_i class, which can be used by * applications to launch component assemblies. */ @@ -12,14 +12,14 @@ #include "Plan_Launcher_Impl_Export.h" #include "ciao/DeploymentS.h" #include "ciao/CIAO_common.h" -#include "ExecutionManager/DAM_Map.h" -#include "Interfaces/ExecutionManagerC.h" +#include "DAnCE/ExecutionManager/DAM_Map.h" +#include "DAnCE/Interfaces/ExecutionManagerDaemonC.h" namespace CIAO { namespace Plan_Launcher { - + /** * @class Plan_Launcher_i * @brief This class launches and manages deployment plans. @@ -28,11 +28,11 @@ namespace CIAO { public: class Deployment_Failure {}; - + Plan_Launcher_i (); - - - bool init (const char *em_ior, + + + bool init (const char *em_ior, CORBA::ORB_ptr orb ACE_ENV_ARG_DECL_WITH_DEFAULTS); @@ -49,7 +49,7 @@ namespace CIAO const char * re_launch_plan (const char *plan_uri ACE_ENV_ARG_DECL_WITH_DEFAULTS) ACE_THROW_SPEC ((Deployment_Failure)); - + /** * @fn launch_plan * @brief Launch a plan, given an IDL deployment plan @@ -63,30 +63,30 @@ namespace CIAO const char * re_launch_plan (const ::Deployment::DeploymentPlan &plan ACE_ENV_ARG_DECL_WITH_DEFAULTS) ACE_THROW_SPEC ((Deployment_Failure)); - + /// Returns the DAM associated with a given plan URI ::Deployment::DomainApplicationManager_ptr get_dam (const char *uuid ACE_ENV_ARG_DECL_WITH_DEFAULTS); - + /// Tears down a plan given the UUID bool teardown_plan (const char *uuid ACE_ENV_ARG_DECL); - + bool teardown_plan (::Deployment::DomainApplicationManager_ptr dam ACE_ENV_ARG_DECL_WITH_DEFAULTS); - + void destroy_dam (::Deployment::DomainApplicationManager_ptr dam ACE_ENV_ARG_DECL_WITH_DEFAULTS); void destroy_dam_by_plan (const char * plan_uuid ACE_ENV_ARG_DECL_WITH_DEFAULTS); - + private: ::CIAO::ExecutionManagerDaemon_var em_; - + /// Local map for DAMs, to save expensive UUID lookups. Execution_Manager::DAM_Map map_; }; - + } } diff --git a/TAO/CIAO/DAnCE/RTNodeApplication/NodeApplication_Task.cpp b/TAO/CIAO/DAnCE/RTNodeApplication/NodeApplication_Task.cpp index 4f92f0edbe9..aac0a55afbc 100644 --- a/TAO/CIAO/DAnCE/RTNodeApplication/NodeApplication_Task.cpp +++ b/TAO/CIAO/DAnCE/RTNodeApplication/NodeApplication_Task.cpp @@ -1,12 +1,11 @@ // $Id$ #include "ciao/NodeApplication_CallBackC.h" -#include "NodeApplication_Task.h" -#include "tao/RTPortableServer/RTPortableServer.h" -#include "RTServer_Impl.h" -#include "ace/Null_Mutex.h" #include "ciao/CIAO_common.h" #include "tao/RTPortableServer/RTPortableServer.h" +#include "ace/Null_Mutex.h" +#include "NodeApplication_Task.h" +#include "RTServer_Impl.h" #if !defined (__ACE_INLINE__) # include "NodeApplication_Task.inl" @@ -84,18 +83,18 @@ CIAO::NodeApplication_Task::svc () */ bool retval = nodeapp_servant->init (ACE_ENV_SINGLE_ARG_PARAMETER); ACE_TRY_CHECK; - + if (retval) { ACE_DEBUG ((LM_DEBUG, "NodeApplication Failed on creating and\ initializing the session container!")); return 1; } - + CORBA::String_var str = this->orb_->object_to_string (nodeapp_obj.in () ACE_ENV_ARG_PARAMETER); ACE_TRY_CHECK; - + if (this->options_.ior_output_filename_.length () != 0) CIAO::Utility::write_IOR (this->options_.ior_output_filename_.c_str (), str.in ()); diff --git a/TAO/CIAO/DAnCE/RTNodeApplication/NodeApplication_Task.h b/TAO/CIAO/DAnCE/RTNodeApplication/NodeApplication_Task.h index 5b14a2b5ab5..521dd9a4806 100644 --- a/TAO/CIAO/DAnCE/RTNodeApplication/NodeApplication_Task.h +++ b/TAO/CIAO/DAnCE/RTNodeApplication/NodeApplication_Task.h @@ -36,7 +36,7 @@ namespace CIAO * @brief An ACE_Task subclass that manages the RT-ORB therad */ class NodeApplication_Task - : public virtual ACE_Task_Base + : public ACE_Task_Base { public: // We can add a rt-task configuration facility here. diff --git a/TAO/CIAO/DAnCE/RTNodeApplication/senv.sh b/TAO/CIAO/DAnCE/RTNodeApplication/senv.sh deleted file mode 100755 index bc01029e288..00000000000 --- a/TAO/CIAO/DAnCE/RTNodeApplication/senv.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ACE_ROOT/lib -export LD_LIBRARY_PATH -$* diff --git a/TAO/CIAO/DAnCE/RepositoryManager/PC_Updater.h b/TAO/CIAO/DAnCE/RepositoryManager/PC_Updater.h index da254ab97dc..a60de14a90a 100644 --- a/TAO/CIAO/DAnCE/RepositoryManager/PC_Updater.h +++ b/TAO/CIAO/DAnCE/RepositoryManager/PC_Updater.h @@ -26,12 +26,10 @@ #include "ace/Containers_T.h" //for ACE_Double_Linked_List #include "ace/Malloc_Allocator.h" //for ACE_New_Allocator needed by the doubly link list - #if !defined (ACE_LACKS_PRAGMA_ONCE) #pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ - /** * @class PC_Updater * diff --git a/TAO/CIAO/DAnCE/RepositoryManager/PC_Updater_T.cpp b/TAO/CIAO/DAnCE/RepositoryManager/PC_Updater_T.cpp index 2fb6bdb6bd3..f1b53537735 100644 --- a/TAO/CIAO/DAnCE/RepositoryManager/PC_Updater_T.cpp +++ b/TAO/CIAO/DAnCE/RepositoryManager/PC_Updater_T.cpp @@ -15,7 +15,6 @@ namespace PC_Updater_T for (CORBA::ULong i = 0; i < size; ++i) updater->update (seq[i]); } - } #endif /* PC_Updater_C */ diff --git a/TAO/CIAO/DAnCE/RepositoryManager/RMadmin.cpp b/TAO/CIAO/DAnCE/RepositoryManager/RMadmin.cpp index 0840a02dfb8..2a884d2bd16 100644 --- a/TAO/CIAO/DAnCE/RepositoryManager/RMadmin.cpp +++ b/TAO/CIAO/DAnCE/RepositoryManager/RMadmin.cpp @@ -11,10 +11,9 @@ * author Stoyan Paunov <spaunov@isis.vanderbilt.edu> **/ -#include "RepositoryManagerC.h" +#include "RepositoryManagerDaemonC.h" #include "Options.h" -//#include "Config_Handlers/pcd.hpp" //for the PackageConfiguration data struct #include "ace/OS_NS_fcntl.h" //for open #include "ace/OS_NS_unistd.h" //for close #include "ace/OS_NS_sys_stat.h" //for filesize and fstat and mkdir @@ -228,10 +227,10 @@ CORBA::Octet* read_from_disk ( ACE_OS::fstat (handle, &file_info); - CORBA::Octet* buffer; + CORBA::Octet* buffer = 0; ACE_NEW_RETURN (buffer, CORBA::Octet[file_info.st_size], 0); - //read the contents of the file into the buffer + // read the contents of the file into the buffer if (ACE_OS::read_n (handle, buffer, file_info.st_size) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), @@ -252,7 +251,6 @@ int write_to_disk ( size_t length ) { - // Open a file handle to the local filesystem ACE_HANDLE handle = ACE_OS::open (full_path, O_CREAT | O_TRUNC | O_WRONLY); if (handle == ACE_INVALID_HANDLE) @@ -265,7 +263,7 @@ int write_to_disk ( if (ACE_OS::write (handle, buffer, length) == -1) ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), - ACE_TEXT ("[RM::write_to_disk] file write error")), + ACE_TEXT ("[RM::write_to_disk] file write error")), -1); // Close the file handle diff --git a/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.cpp b/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.cpp index 744f5df5a02..b8a94492920 100644 --- a/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.cpp +++ b/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.cpp @@ -25,35 +25,32 @@ using namespace std; namespace { -///name of the file holding the IOR of the RM +/// Name of the file holding the IOR of the RM const char * rm_ior = "RepositoryManagerDeamon.ior"; -///default number of worker threads to run in the multi-threaded RM +/// Default number of worker threads to run in the multi-threaded RM unsigned int nthreads = 3; } -///Class that implements the service routine of the worker threads -///of the repository manager - +/** + * @class Worker + * + * Class that implements the service routine of the worker threads + * of the repository manager + */ class Worker : public ACE_Task_Base { - // = TITLE - // Run a server thread - // - // = DESCRIPTION - // Use the ACE_Task_Base class to run server threads - // public: + /// ctor Worker (CORBA::ORB_ptr orb); - // ctor + /// The thread entry point. virtual int svc (void); - // The thread entry point. private: + /// The orb CORBA::ORB_var orb_; - // The orb }; diff --git a/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.mpc b/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.mpc index 6ab070bc72a..2e261722fa0 100644 --- a/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.mpc +++ b/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.mpc @@ -10,12 +10,12 @@ project (RepositoryManager) : ciao_component_dnc, taoexe, ciao_config_handlers, requires += zzip zlib IDL_Files { - RepositoryManager.idl + RepositoryManagerDaemon.idl } Source_Files { - RepositoryManagerC.cpp - RepositoryManagerS.cpp + RepositoryManagerDaemonC.cpp + RepositoryManagerDaemonS.cpp ZIP_Wrapper.cpp RepositoryManager.cpp RepositoryManager_Impl.cpp @@ -33,15 +33,15 @@ project (RepositoryManager) : ciao_component_dnc, taoexe, ciao_config_handlers, project (RMAdmin) : ciao_component_dnc, ciao_config_handlers { exename = RMadmin - after += RepositoryManager + after += RepositoryManager IDL_Files { - RepositoryManager.idl + RepositoryManagerDaemon.idl } Source_Files { RMadmin.cpp - RepositoryManagerC.cpp + RepositoryManagerDaemonC.cpp Options.cpp RM_Helper.cpp } diff --git a/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.idl b/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManagerDaemon.idl index 5293ed4fcbe..f86e14c1c8b 100644 --- a/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager.idl +++ b/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManagerDaemon.idl @@ -1,6 +1,6 @@ // $Id$ -#include "Deployment.idl" +#include "RepositoryManager.idl" module CIAO { diff --git a/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager_Impl.h b/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager_Impl.h index 7023b12fa25..6538f254a9d 100644 --- a/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager_Impl.h +++ b/TAO/CIAO/DAnCE/RepositoryManager/RepositoryManager_Impl.h @@ -32,8 +32,7 @@ //#define ASSEMBLY_INTERFACE_SUPPORT 1 -#include "RepositoryManagerS.h" -#include "DeploymentS.h" //added for the deployment stuff +#include "RepositoryManagerDaemonS.h" #include "ace/Hash_Map_Manager.h" //for the ACE_Hash_Map_Manager #include "ace/Null_Mutex.h" //for ACE_Null_Mutex @@ -41,30 +40,29 @@ #include "ace/OS_NS_string.h" //for ACE_CString #include "ace/SString.h" - #if !defined (ACE_LACKS_PRAGMA_ONCE) #pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ - namespace { -///DIRECTORY WHERE THE PACKAGES WILL BE STORED LOCALLY -const static char* INSTALL_PATH = "RepositoryDir"; + /// Directory where the packages will be stored locally + const static char* INSTALL_PATH = "RepositoryDir"; -const static size_t TEMP_LEN = 512; + const static size_t TEMP_LEN = 512; -const static char* PC_EXTENSION = ".epc"; + const static char* PC_EXTENSION = ".epc"; } -class CIAO_RepositoryManagerDaemon_i : public virtual POA_CIAO::RepositoryManagerDaemon +class CIAO_RepositoryManagerDaemon_i : + public virtual POA_CIAO::RepositoryManagerDaemon { public: - //Constructor + /// Constructor CIAO_RepositoryManagerDaemon_i (CORBA::ORB_ptr the_orb, const char* server = "http://localhost:5432/"); - //Destructor + /// Destructor virtual ~CIAO_RepositoryManagerDaemon_i (void); virtual @@ -152,34 +150,35 @@ public: protected: - ///function to parse and return the PackageConfiguration from a specified package + /// Function to parse and return the PackageConfiguration from a specified + /// package Deployment::PackageConfiguration* retrieve_PC_from_package (char* package); - ///find out what the name of the PackageConfiguration file is + /// Find out what the name of the PackageConfiguration file is void find_PC_name (char* package, ACE_CString& pcd_name); - ///function to parse and return the PackageConfiguration from the already - ///extracted descriptor files + /// Function to parse and return the PackageConfiguration from the already + /// extracted descriptor files Deployment::PackageConfiguration* retrieve_PC_from_descriptors (const char* pc_name, const char* descriptor_dir); - ///function to retvieve a file via HTTP - ///stores the file in the passed preallocated ACE_Message_Block - ///returns 1 on success - /// 0 on error + /// Function to retrieve a file via HTTP + /// stores the file in the passed preallocated ACE_Message_Block + /// @retval 1 success + /// @retval 0 error int HTTP_Get (const char* URL, ACE_Message_Block &mb); - ///function to extract all necessary files for parsing the PackageConfiguration - ///descriptor and populating the idl struct. - ///return 1 on success - /// 0 on error + /// Function to extract all necessary files for parsing the + /// PackageConfiguration descriptor and populating the idl struct. + /// @retval 1 success + /// @retval 0 error /// - ///NOTE: ACE_CString& pcd_name is an out parameter + /// @note ACE_CString& pcd_name is an out parameter int extract_descriptor_files (char* package, - ACE_CString& pcd_name); + ACE_CString& pcd_name); ///function to remove the files extracted for parsing the PackageConfiguration @@ -270,10 +269,10 @@ public: //a hash map that associates the names of //PackageConfigurations with their location - PCMap names_; + PCMap names_; - //a hash map that associates the UUIDs of - //PackageConfigurations with their location + /// a hash map that associates the UUIDs of + /// PackageConfigurations with their location PCMap uuids_; #if defined ASSEMBLY_INTERFACE_SUPPORT diff --git a/TAO/CIAO/DAnCE/TargetManager/Deployment_Configuration.h b/TAO/CIAO/DAnCE/TargetManager/Deployment_Configuration.h index 07fa26df036..effca979a4c 100644 --- a/TAO/CIAO/DAnCE/TargetManager/Deployment_Configuration.h +++ b/TAO/CIAO/DAnCE/TargetManager/Deployment_Configuration.h @@ -23,13 +23,13 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "DeploymentC.h" -#include "DomainApplicationManager/DomainApplicationManager_Export.h" -#include "ace/SString.h" +#include "ciao/NodeManagerC.h" #include "tao/Valuetype/ValueBase.h" #include "tao/Valuetype/Valuetype_Adapter_Impl.h" #include "ace/SString.h" +#include "DomainApplicationManager/DomainApplicationManager_Export.h" + namespace CIAO { /** diff --git a/TAO/CIAO/DAnCE/TargetManager/TargetManager.idl b/TAO/CIAO/DAnCE/TargetManager/TargetManager.idl index 249def3fcb0..21200871e68 100644 --- a/TAO/CIAO/DAnCE/TargetManager/TargetManager.idl +++ b/TAO/CIAO/DAnCE/TargetManager/TargetManager.idl @@ -22,7 +22,6 @@ * @brief TargetManager interface defintion * */ - module CIAO { component TargetManagerImpl diff --git a/TAO/CIAO/ciao/CCM_Base.idl b/TAO/CIAO/ciao/CCM_Base.idl index 7e13e525545..63c05a79578 100644 --- a/TAO/CIAO/ciao/CCM_Base.idl +++ b/TAO/CIAO/ciao/CCM_Base.idl @@ -25,9 +25,6 @@ module Components { - /** - * @@ Commented out temporarily for lack of typePrefix support. - */ typeprefix Components "omg.org"; typedef string FeatureName; diff --git a/TAO/CIAO/ciao/CCM_Component.idl b/TAO/CIAO/ciao/CCM_Component.idl index 4ff4549326b..fd91c12fdd3 100644 --- a/TAO/CIAO/ciao/CCM_Component.idl +++ b/TAO/CIAO/ciao/CCM_Component.idl @@ -15,7 +15,11 @@ #define CCM_COMPONENT_IDL #include "CCM_Event.idl" -#include "tao/IFR_Client/IFR_Base.pidl" + +module CORBA +{ + interface IRObject; // forward declerations +}; module Components { diff --git a/TAO/CIAO/ciao/CCM_Core.mpc b/TAO/CIAO/ciao/CCM_Core.mpc index 4667e2cbaef..f73fb1b9b0b 100644 --- a/TAO/CIAO/ciao/CCM_Core.mpc +++ b/TAO/CIAO/ciao/CCM_Core.mpc @@ -10,7 +10,7 @@ project (CIAO_DnC_Client) : taolib_with_idl, valuetype, ifr_client { // This is necessary for MPC to pull in rules.ciao.GNU includes += $(CIAO_ROOT)/DAnCE - + dynamicflags = CIAO_CLIENT_BUILD_DLL IDL_Files { @@ -96,6 +96,11 @@ project(Deployment_stub) : taolib_with_idl, valuetype, ifr_client { Packaging_Data.idl Target_Data.idl Deployment.idl + NodeManager.idl + NodeApplicationManager.idl + DomainApplicationManager.idl + ExecutionManager.idl + RepositoryManager.idl ServerResources.idl } @@ -106,6 +111,11 @@ project(Deployment_stub) : taolib_with_idl, valuetype, ifr_client { Packaging_DataC.cpp Target_DataC.cpp DeploymentC.cpp + NodeManagerC.cpp + NodeApplicationManagerC.cpp + DomainApplicationManagerC.cpp + ExecutionManagerC.cpp + RepositoryManagerC.cpp NodeApplication_CallBackC.cpp ServerResourcesC.cpp } @@ -136,6 +146,11 @@ project(Deployment_svnt) : taolib_with_idl, portableserver, valuetype, ifr_clien Packaging_DataS.cpp Target_DataS.cpp DeploymentS.cpp + RepositoryManagerS.cpp + NodeManagerS.cpp + NodeApplicationManagerS.cpp + DomainApplicationManagerS.cpp + ExecutionManagerS.cpp NodeApp_CB_Impl.cpp NodeApplication_CallBackS.cpp ServerResourcesS.cpp diff --git a/TAO/CIAO/ciao/Deployment.idl b/TAO/CIAO/ciao/Deployment.idl index 7c303d61a66..f5ff99919e3 100644 --- a/TAO/CIAO/ciao/Deployment.idl +++ b/TAO/CIAO/ciao/Deployment.idl @@ -14,14 +14,6 @@ module Deployment { string reason; }; - exception NameExists { - }; - - exception PackageError { - string source; - string reason; - }; - exception NoSuchName { }; @@ -45,239 +37,10 @@ module Deployment { typedef sequence < ComponentPlan > ComponentPlans; - interface ApplicationManager { - Application startLaunch (in Properties configProperty, - out Connections providedReference, - in boolean start) - raises (ResourceNotAvailable, StartError, InvalidProperty); - void destroyApplication (in Application app) - raises (StopError); - }; - typedef sequence < Application > Applications; - /// CIAO 's DomainApplicationManager interface differs spec-defined interface - /// in the same that it also integrates the spec-defined interface for - /// DomainApplication into itself - interface DomainApplicationManager - { - DeploymentPlan getPlan (); - - /// CIAO specific version of startLaunch implementation, this one - /// differs with spec-defined operation in the sense that it doesn't - /// return DomainApplication object reference. - void startLaunch (in Properties configProperty, in boolean start) - raises (ResourceNotAvailable, StartError, InvalidProperty); - - void finishLaunch (in boolean start, - in boolean is_ReDAC) - raises (StartError, InvalidConnection); - - void start () - raises (StartError); - - /// CIAO specific extention - /// Fetch NodeApplication based on the given node name - NodeApplication get_node_app (in string node_name) - raises (NoSuchName); - - /// CIAO speicifc extension, it differs with the spec defined one - /// for no input parameter. - void destroyApplication () - raises (StopError); - - /// CIAO specific extension to destroy NodeApplicationManager - void destroyManager () - raises (StopError); - - /// CIAO specific extension - /// Perform the actual redeployment and reconfiguration on the dommain level. - void perform_redeployment (in DeploymentPlan new_plan) - raises (PlanError, - InstallationFailure, - UnknownImplId, - ImplEntryPointNotFound, - InvalidConnection, - InvalidProperty, - ::Components::RemoveFailure); - }; - - typedef sequence < DomainApplicationManager > DomainApplicationManagers; - - interface ExecutionManager { - DomainApplicationManager preparePlan (in DeploymentPlan plan, - in boolean commitResources) - raises (ResourceNotAvailable, PlanError, StartError); - - DomainApplicationManagers getManagers (); - - DomainApplicationManager getManager (in string plan_uuid) - raises (PlanNotExist); - - void destroyManager (in DomainApplicationManager manager) - raises (StopError); - - /// CIAO specific extention - /// Destroy ApplicatioManagers by plan_uuid, the unique semantics of this - /// operation lies in the fact that if some components are - /// still up and running, then the ApplicationManagers won't be destroyed. - void destroyManagerByPlan (in string plan_uuid) - raises (StopError); - - /// CIAO specific extention - /// "Get" operation, return the DeploymentPlan - DeploymentPlan getPlan (in string plan_uuid); - - /// CIAO specific operation to handle dynamic system redeployment - /// and reconfiguration - /// This operation could handle dynamic redeployment, and this - /// is the operation exposed to clients directly. Other - /// "perform_redeployment" operation defined on DAM and NA - /// are implementaion details within DAnCE. - void perform_redeployment (in DeploymentPlan new_plan) - raises (PlanError, - InstallationFailure, - UnknownImplId, - ImplEntryPointNotFound, - InvalidConnection, - InvalidProperty, - ::Components::RemoveFailure); - }; - interface Logger { }; - - interface NodeApplicationManager : - ApplicationManager - { - /// CIAO specific operation to handle dynamic system redeployment - /// and reconfiguration - /// This operation could handle dynamic redeployment for - /// a node-level deployment plan within a node - /// @para add_or_remove If true, we add new components only, vice vesa. - Application perform_redeployment (in Properties configProperty, - out Connections providedReference, - in boolean add_or_remove, - in boolean start) - raises (PlanError, - InstallationFailure, - UnknownImplId, - ImplEntryPointNotFound, - InvalidConnection, - InvalidProperty, - ::Components::RemoveFailure); - - /// CIAO specific operation to reset deployment plan - void reset_plan (in DeploymentPlan plan); - - /// CIAO speicfic operation to set the information of - /// "shared components" (through NodeManager) - void set_shared_components (in ComponentPlans components); - }; - - interface NodeManager { - void joinDomain (in Domain ciao_domain, - in TargetManager manager, - in Logger log); - - void leaveDomain (); - - NodeApplicationManager preparePlan (in DeploymentPlan plan) - raises (StartError, PlanError); - - void destroyManager (in NodeApplicationManager appManager) - raises (StopError, InvalidReference); - - /// CIAO specific extension - /// Destroy the NAM and all the associated NAs with this child_plan - /// We can guarantee that the input DeploymentPlan is valid, since it - /// is fetched from the cached DeploymentPlan of DAM, which has been - /// validated before. - void destroyPlan (in DeploymentPlan plan) - raises (StopError); - - /// CIAO specific extension - /// Get all the shared components installed in this node - ComponentPlans get_shared_components (); - }; - - interface RepositoryManager { - void installPackage (in string installationName, in string location) - raises (NameExists, PackageError); - void createPackage (in string installationName, - in PackageConfiguration package, - in string baseLocation, - in boolean replace) - raises (NameExists, PackageError); - PackageConfiguration findPackageByName (in string name) - raises (NoSuchName); - PackageConfiguration findPackageByUUID (in string UUID) - raises (NoSuchName); - ::CORBA::StringSeq findNamesByType (in string type); - ::CORBA::StringSeq getAllNames (); - ::CORBA::StringSeq getAllTypes (); - void deletePackage (in string installationName) - raises (NoSuchName); - }; - - -//***************************************new_RepositoryManager ONWARDS***************************************** - -typedef sequence<octet> Artifact; - typedef sequence<octet> Package; - - exception NoPlan { - }; - - enum Platform { - Win32, - Unix, - Linux, - Solaris, - Vxworks, - UNDEF - }; - - struct Implementation - { - Platform the_platform; - string name; - Artifact the_implementation; - }; - - typedef sequence<Implementation> Implementations; - - interface new_RepositoryManager - { - void installPackage (in string installationName, - in Package the_package, - in boolean replace) - raises (NameExists, PackageError); - - DeploymentPlan retrievePlan (in string packageName) - raises (NoPlan); - - Package findPackageByName (in string name) - raises (NoSuchName); - - Implementation findImplementationByName (in string implementation_name, - in string package_name) - raises (NoSuchName); - - Package findPackageByUUID (in string UUID) - raises (NoSuchName); - - Implementation findImplementationByUUID (in string UUID) - raises (NoSuchName); - - //::CORBA::StringSeq findNamesByType (in string type); - //::CORBA::StringSeq getAllTypes (); - - ::CORBA::StringSeq getAllPackageNames (); - - void deletePackage (in string installationName) - raises (NoSuchName); - }; }; #endif /* DEPLOYMENT_IDL */ diff --git a/TAO/CIAO/ciao/Deployment_Base.idl b/TAO/CIAO/ciao/Deployment_Base.idl index 4c769c61aed..1562541796c 100644 --- a/TAO/CIAO/ciao/Deployment_Base.idl +++ b/TAO/CIAO/ciao/Deployment_Base.idl @@ -3,7 +3,6 @@ #define DEPLOYMENT_BASE_IDL #include <orb.idl> -#include "tao/ULongSeq.pidl" #include "Deployment_Core.idl" module Deployment { diff --git a/TAO/CIAO/ciao/DomainApplicationManager.idl b/TAO/CIAO/ciao/DomainApplicationManager.idl new file mode 100644 index 00000000000..f6e00772464 --- /dev/null +++ b/TAO/CIAO/ciao/DomainApplicationManager.idl @@ -0,0 +1,55 @@ +// $Id$ +#ifndef DOMAINAPPLICATIONMANAGER_IDL +#define DOMAINAPPLICATIONMANAGER_IDL + +#include "Deployment.idl" + +module Deployment { + /// CIAO 's DomainApplicationManager interface differs spec-defined interface + /// in the same that it also integrates the spec-defined interface for + /// DomainApplication into itself + interface DomainApplicationManager + { + DeploymentPlan getPlan (); + + /// CIAO specific version of startLaunch implementation, this one + /// differs with spec-defined operation in the sense that it doesn't + /// return DomainApplication object reference. + void startLaunch (in Properties configProperty, in boolean start) + raises (ResourceNotAvailable, StartError, InvalidProperty); + + void finishLaunch (in boolean start, + in boolean is_ReDAC) + raises (StartError, InvalidConnection); + + void start () + raises (StartError); + + /// CIAO specific extention + /// Fetch NodeApplication based on the given node name + NodeApplication get_node_app (in string node_name) + raises (NoSuchName); + + /// CIAO specific extension, it differs with the spec defined one + /// for no input parameter. + void destroyApplication () + raises (StopError); + + /// CIAO specific extension to destroy NodeApplicationManager + void destroyManager () + raises (StopError); + + /// CIAO specific extension + /// Perform the actual redeployment and reconfiguration on the dommain level. + void perform_redeployment (in DeploymentPlan new_plan) + raises (PlanError, + InstallationFailure, + UnknownImplId, + ImplEntryPointNotFound, + InvalidConnection, + InvalidProperty, + ::Components::RemoveFailure); + }; +}; + +#endif /* DOMAINAPPLICATIONMANAGER_IDL */ diff --git a/TAO/CIAO/ciao/Dynamic_Component_Activator.h b/TAO/CIAO/ciao/Dynamic_Component_Activator.h index 1e9a023f38c..d42fa216698 100644 --- a/TAO/CIAO/ciao/Dynamic_Component_Activator.h +++ b/TAO/CIAO/ciao/Dynamic_Component_Activator.h @@ -15,23 +15,24 @@ #define CIAO_DYNAMIC_SWAPPING_ACTIVATOR_H #include /**/ "ace/pre.h" -#include "ace/Array_Base.h" #include "ciao/CIAO_Server_Export.h" -#include "ciao/CCM_ContainerC.h" -#include "ciao/Deployment_CoreC.h" - -#include "tao/PortableServer/Key_Adapters.h" -#include "ace/Hash_Map_Manager_T.h" -#include "Dynamic_Component_Servant_Base.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +#include "ciao/CCM_ContainerC.h" +#include "ciao/Deployment_CoreC.h" +#include "ciao/Dynamic_Component_Servant_Base.h" + +#include "tao/PortableServer/Key_Adapters.h" #include "tao/PortableServer/PortableServer.h" #include "tao/LocalObject.h" #include "tao/PortableServer/ServantActivatorC.h" +#include "ace/Hash_Map_Manager_T.h" +#include "ace/Array_Base.h" + #if defined(_MSC_VER) #pragma warning(push) #pragma warning(disable:4250) diff --git a/TAO/CIAO/ciao/ExecutionManager.idl b/TAO/CIAO/ciao/ExecutionManager.idl new file mode 100644 index 00000000000..7b6022f50a6 --- /dev/null +++ b/TAO/CIAO/ciao/ExecutionManager.idl @@ -0,0 +1,52 @@ +// $Id$ +#ifndef EXECUTIONMANAGER_IDL +#define EXECUTIONMANAGER_IDL + +#include "Deployment.idl" + +module Deployment { + interface DomainApplicationManager; + typedef sequence < DomainApplicationManager > DomainApplicationManagers; + + interface ExecutionManager { + DomainApplicationManager preparePlan (in DeploymentPlan plan, + in boolean commitResources) + raises (ResourceNotAvailable, PlanError, StartError); + + DomainApplicationManagers getManagers (); + + DomainApplicationManager getManager (in string plan_uuid) + raises (PlanNotExist); + + void destroyManager (in DomainApplicationManager manager) + raises (StopError); + + /// CIAO specific extention + /// Destroy ApplicationManagers by plan_uuid, the unique semantics of this + /// operation lies in the fact that if some components are + /// still up and running, then the ApplicationManagers won't be destroyed. + void destroyManagerByPlan (in string plan_uuid) + raises (StopError); + + /// CIAO specific extention + /// "Get" operation, return the DeploymentPlan + DeploymentPlan getPlan (in string plan_uuid); + + /// CIAO specific operation to handle dynamic system redeployment + /// and reconfiguration + /// This operation could handle dynamic redeployment, and this + /// is the operation exposed to clients directly. Other + /// "perform_redeployment" operation defined on DAM and NA + /// are implementaion details within DAnCE. + void perform_redeployment (in DeploymentPlan new_plan) + raises (PlanError, + InstallationFailure, + UnknownImplId, + ImplEntryPointNotFound, + InvalidConnection, + InvalidProperty, + ::Components::RemoveFailure); + }; +}; + +#endif /* EXECUTIONMANAGER_IDL */ diff --git a/TAO/CIAO/ciao/NodeApplicationManager.idl b/TAO/CIAO/ciao/NodeApplicationManager.idl new file mode 100644 index 00000000000..63c64b23785 --- /dev/null +++ b/TAO/CIAO/ciao/NodeApplicationManager.idl @@ -0,0 +1,46 @@ +// $Id$ +#ifndef NODEAPPLICATIONMANAGER_IDL +#define NODEAPPLICATIONMANAGER_IDL + +#include "Deployment.idl" + +module Deployment { + interface ApplicationManager { + Application startLaunch (in Properties configProperty, + out Connections providedReference, + in boolean start) + raises (ResourceNotAvailable, StartError, InvalidProperty); + void destroyApplication (in Application app) + raises (StopError); + }; + + interface NodeApplicationManager : + ApplicationManager + { + /// CIAO specific operation to handle dynamic system redeployment + /// and reconfiguration + /// This operation could handle dynamic redeployment for + /// a node-level deployment plan within a node + /// @para add_or_remove If true, we add new components only, vice vesa. + Application perform_redeployment (in Properties configProperty, + out Connections providedReference, + in boolean add_or_remove, + in boolean start) + raises (PlanError, + InstallationFailure, + UnknownImplId, + ImplEntryPointNotFound, + InvalidConnection, + InvalidProperty, + ::Components::RemoveFailure); + + /// CIAO specific operation to reset deployment plan + void reset_plan (in DeploymentPlan plan); + + /// CIAO speicfic operation to set the information of + /// "shared components" (through NodeManager) + void set_shared_components (in ComponentPlans components); + }; +}; + +#endif /* NODEAPPLICATIONMANAGER_IDL */ diff --git a/TAO/CIAO/ciao/NodeApplication_CallBack.idl b/TAO/CIAO/ciao/NodeApplication_CallBack.idl index 9c4f1d14775..d0f8daeb42e 100644 --- a/TAO/CIAO/ciao/NodeApplication_CallBack.idl +++ b/TAO/CIAO/ciao/NodeApplication_CallBack.idl @@ -4,12 +4,13 @@ * This IDL file is used to combine the NodeApplication * interface with the NodeApplicationManager interface. * - * NodeApplicationManager will be spwan NodeApplication. + * NodeApplicationManager will be spawn NodeApplication. * The call back object will be used to get the objectref of * NodeApplication. */ #include "Deployment.idl" +#include "NodeApplicationManager.idl" module CIAO { diff --git a/TAO/CIAO/ciao/NodeManager.idl b/TAO/CIAO/ciao/NodeManager.idl new file mode 100644 index 00000000000..47651ac52bb --- /dev/null +++ b/TAO/CIAO/ciao/NodeManager.idl @@ -0,0 +1,38 @@ +// $Id$ +#ifndef NODEMANAGER_IDL +#define NODEMANAGER_IDL + +#include "Deployment.idl" + +module Deployment { + + interface NodeApplicationManager; + + interface NodeManager { + void joinDomain (in Domain ciao_domain, + in TargetManager manager, + in Logger log); + + void leaveDomain (); + + NodeApplicationManager preparePlan (in DeploymentPlan plan) + raises (StartError, PlanError); + + void destroyManager (in NodeApplicationManager appManager) + raises (StopError, InvalidReference); + + /// CIAO specific extension + /// Destroy the NAM and all the associated NAs with this child_plan + /// We can guarantee that the input DeploymentPlan is valid, since it + /// is fetched from the cached DeploymentPlan of DAM, which has been + /// validated before. + void destroyPlan (in DeploymentPlan plan) + raises (StopError); + + /// CIAO specific extension + /// Get all the shared components installed in this node + ComponentPlans get_shared_components (); + }; +}; + +#endif /* NODEMANAGER_IDL */ diff --git a/TAO/CIAO/ciao/RepositoryManager.idl b/TAO/CIAO/ciao/RepositoryManager.idl new file mode 100644 index 00000000000..f7fbe6f4d36 --- /dev/null +++ b/TAO/CIAO/ciao/RepositoryManager.idl @@ -0,0 +1,38 @@ +// $Id$ +#ifndef REPOSITORY_MANAGER_IDL +#define REPOSITORY_MANAGER_IDL + +#include "Packaging_Data.idl" +#include "Deployment.idl" + +module Deployment { + + exception NameExists { + }; + + exception PackageError { + string source; + string reason; + }; + + interface RepositoryManager { + void installPackage (in string installationName, in string location) + raises (NameExists, PackageError); + void createPackage (in string installationName, + in PackageConfiguration package, + in string baseLocation, + in boolean replace) + raises (NameExists, PackageError); + PackageConfiguration findPackageByName (in string name) + raises (NoSuchName); + PackageConfiguration findPackageByUUID (in string UUID) + raises (NoSuchName); + ::CORBA::StringSeq findNamesByType (in string type); + ::CORBA::StringSeq getAllNames (); + ::CORBA::StringSeq getAllTypes (); + void deletePackage (in string installationName) + raises (NoSuchName); + }; +}; + +#endif /* REPOSITOR_MANAGER_IDL */ diff --git a/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_Base.h b/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_Base.h index 874a1c85d01..66258261e7d 100644 --- a/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_Base.h +++ b/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_Base.h @@ -21,7 +21,7 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ -#include "CIAO_Server_Export.h" +#include "ciao/CIAO_Server_Export.h" namespace CIAO { diff --git a/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_T.cpp b/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_T.cpp index 2b7e644b0b9..8df9c7554e8 100644 --- a/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_T.cpp +++ b/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_T.cpp @@ -3,8 +3,8 @@ #ifndef CIAO_SWAPPING_SERVANT_IMPL_T_C #define CIAO_SWAPPING_SERVANT_IMPL_T_C -#include "Swapping_Servant_Home_Impl_T.h" -#include "Dynamic_Component_Servant_T.h" +#include "ciao/Swapping_Servant_Home_Impl_T.h" +#include "ciao/Dynamic_Component_Servant_T.h" namespace CIAO { diff --git a/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_T.h b/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_T.h index b454d103815..2b5b64df889 100644 --- a/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_T.h +++ b/TAO/CIAO/ciao/Swapping_Servant_Home_Impl_T.h @@ -18,7 +18,7 @@ #include /**/ "ace/pre.h" -#include "Home_Servant_Impl_Base.h" +#include "ciao/Home_Servant_Impl_Base.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -26,7 +26,7 @@ #include "tao/PortableServer/Key_Adapters.h" #include "ace/Hash_Map_Manager_T.h" -#include "Dynamic_Component_Servant_Base.h" +#include "ciao/Dynamic_Component_Servant_Base.h" namespace CIAO { diff --git a/TAO/CIAO/ciao/Upgradeable_Context_Impl_T.h b/TAO/CIAO/ciao/Upgradeable_Context_Impl_T.h index 42a28142284..18e5272b205 100644 --- a/TAO/CIAO/ciao/Upgradeable_Context_Impl_T.h +++ b/TAO/CIAO/ciao/Upgradeable_Context_Impl_T.h @@ -15,8 +15,8 @@ #include /**/ "ace/pre.h" -#include "UpgradeableContextC.h" -#include "Context_Impl_T.h" +#include "ciao/UpgradeableContextC.h" +#include "ciao/Context_Impl_T.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -31,9 +31,9 @@ TAO_END_VERSIONED_NAMESPACE_DECL namespace CIAO { - template <typename BASE_CTX, - typename SVNT, - typename COMP, + template <typename BASE_CTX, + typename SVNT, + typename COMP, typename COMP_VAR> class Upgradeable_Context_Impl : public virtual Context_Impl< BASE_CTX, SVNT, COMP, COMP_VAR> @@ -66,11 +66,14 @@ namespace CIAO ACE_THROW_SPEC ((CORBA::SystemException, ::Components::InvalidName, ::Components::InvalidConnection)) = 0; - + protected: SVNT *servant_; COMP_VAR component_; typedef Context_Impl<BASE_CTX, SVNT, COMP, COMP_VAR> session_context; + private: + /// Not to be used + Upgradeable_Context_Impl (void); }; } |