diff options
author | Johnny Willemsen <jwillemsen@remedy.nl> | 2006-11-22 11:18:50 +0000 |
---|---|---|
committer | Johnny Willemsen <jwillemsen@remedy.nl> | 2006-11-22 11:18:50 +0000 |
commit | 1f9c3f107fdfe3ab39491313b95e41e65f1d7af5 (patch) | |
tree | e4efcc9e736ce38cb877850a55a5efd6ceeea7d2 | |
parent | 3b05d9285e09d5b55bc2de94f9f4e9d29fb7433c (diff) | |
download | ATCD-1f9c3f107fdfe3ab39491313b95e41e65f1d7af5.tar.gz |
Wed Nov 22 11:05:12 2006 Johnny Willemsen <jwillemsen@remedy.nl>
56 files changed, 1326 insertions, 845 deletions
diff --git a/CIAO/ciao/CCM_Base.idl b/CIAO/ciao/CCM_Base.idl index a37d55c099f..32f46191825 100644 --- a/CIAO/ciao/CCM_Base.idl +++ b/CIAO/ciao/CCM_Base.idl @@ -27,114 +27,8 @@ module Components { typeprefix Components "omg.org"; - typedef string FeatureName; - typedef sequence<FeatureName> NameList; - - valuetype Cookie - { - private CORBA::OctetSeq cookieValue; - }; - - valuetype PortDescription - { - public FeatureName name; - public CORBA::RepositoryId type_id; - }; - - valuetype FacetDescription : PortDescription - { - public Object facet_ref; - }; - - typedef sequence<FacetDescription> FacetDescriptions; - - typedef unsigned long FailureReason; - - exception InvalidName {}; exception InvalidConnection {}; - exception ExceededConnectionLimit {}; exception AlreadyConnected {}; exception NoConnection {}; - exception CookieRequired {}; - exception CreateFailure { - FailureReason reason; - }; - exception FinderFailure - { - FailureReason reason; - }; - exception RemoveFailure - { - FailureReason reason; - }; - exception DuplicateKeyValue {}; - exception InvalidKey {}; - exception UnknownKeyValue {}; - exception NoKeyAvailable {}; - exception BadEventType - { - CORBA::RepositoryId expected_event_type; - }; - exception HomeNotFound {}; - exception WrongComponentType {}; - - typedef FailureReason InvalidConfigurationReason; - const InvalidConfigurationReason UnknownConfigValueName = 0; - const InvalidConfigurationReason InvalidConfigValueType = 1; - const InvalidConfigurationReason ConfigValueRequired = 2; - const InvalidConfigurationReason ConfigValueNotExpected = 3; - exception InvalidConfiguration - { - InvalidConfigurationReason reason; - FeatureName name; - }; - exception IllegalState {}; - - interface Navigation - { - Object provide_facet (in FeatureName name) - raises (InvalidName); - FacetDescriptions get_all_facets(); - FacetDescriptions get_named_facets (in NameList names) - raises (InvalidName); - boolean same_component (in Object object_ref); - }; - - valuetype ConnectionDescription - { - public Cookie ck; - public Object objref; - }; - typedef sequence<ConnectionDescription> ConnectionDescriptions; - - valuetype ReceptacleDescription : PortDescription - { - public boolean is_multiple; - public ConnectionDescriptions connections; - }; - typedef sequence<ReceptacleDescription> ReceptacleDescriptions; - - interface Receptacles - { - Cookie connect (in FeatureName name, in Object connection ) - raises (InvalidName, - InvalidConnection, - AlreadyConnected, - ExceededConnectionLimit); - - Object disconnect (in FeatureName name, in Cookie ck) - raises (InvalidName, - InvalidConnection, - CookieRequired, - NoConnection); - - ConnectionDescriptions get_connections (in FeatureName name) - raises (InvalidName); - - ReceptacleDescriptions get_all_receptacles (); - - ReceptacleDescriptions get_named_receptacles (in NameList names) - raises (InvalidName); - }; }; #endif /* CCM_BASE_IDL */ diff --git a/CIAO/ciao/CCM_CCM2Context.idl b/CIAO/ciao/CCM_CCM2Context.idl new file mode 100644 index 00000000000..d0533714ad1 --- /dev/null +++ b/CIAO/ciao/CCM_CCM2Context.idl @@ -0,0 +1,47 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container_Ex.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_2CONTEXT_IDL) +#define CCM_2CONTEXT_IDL + +#include "CCM_Container.idl" +#include "CCM_HomeRegistration.idl" +#include <CosPersistentState.idl> + +// *************** Extended Container Interfaces *************** + +module Components +{ + typeprefix Components "omg.org"; + + typedef CosPersistentState::CatalogBase CatalogBase; + typedef CosPersistentState::_TypeId _TypeId; + + exception PolicyMismatch {}; + exception PersistenceNotAvailable {}; + + local interface CCM2Context : CCMContext + { + HomeRegistration get_home_registration (); + + void req_passivate () + raises (PolicyMismatch); + + CatalogBase get_persistence (in _TypeId catalog_type_id) + raises (PersistenceNotAvailable); + }; + +}; +#endif /* CCM_2CONTEXT_IDL */ diff --git a/CIAO/ciao/CCM_CCMException.idl b/CIAO/ciao/CCM_CCMException.idl new file mode 100644 index 00000000000..445e09e1d1a --- /dev/null +++ b/CIAO/ciao/CCM_CCMException.idl @@ -0,0 +1,37 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container.idl + */ + +#if !defined (CCM_CCMEXCEPTION_IDL) +#define CCM_CCMEXCEPTION_IDL + +module Components +{ + typeprefix Components "omg.org"; + + enum CCMExceptionReason + { + SYSTEM_ERROR, + CREATE_ERROR, + REMOVE_ERROR, + DUPLICATE_KEY, + FIND_ERROR, + OBJECT_NOT_FOUND, + NO_SUCH_ENTITY + }; + + exception CCMException + { + CCMExceptionReason reason; + }; +}; +#endif /* CCM_CCMEXCEPTION_IDL */ diff --git a/CIAO/ciao/CCM_Component.idl b/CIAO/ciao/CCM_Component.idl index 32c0299acf0..a19ce9b4099 100644 --- a/CIAO/ciao/CCM_Component.idl +++ b/CIAO/ciao/CCM_Component.idl @@ -15,142 +15,8 @@ #define CCM_COMPONENT_IDL #include "CCM_Event.idl" -#include "tao/IFR_Client/IFR_Base.pidl" +#include "CCM_Home.idl" +#include "CCM_Object.idl" +#include "CCM_Enumeration.idl" -module Components -{ - typeprefix Components "omg.org"; - - abstract valuetype PrimaryKeyBase {}; - - interface CCMObject; //forward reference - - interface CCMHome - { - CORBA::IRObject get_component_def (); - CORBA::IRObject get_home_def (); - void remove_component ( in CCMObject comp) - raises (RemoveFailure); - }; - typedef sequence<CCMHome> CCMHomes; - - interface KeylessCCMHome - { - CCMObject create_component() - raises (CreateFailure); - }; - - interface HomeFinder - { - CCMHome find_home_by_component_type (in CORBA::RepositoryId comp_repid) - raises (HomeNotFound); - - CCMHome find_home_by_home_type (in CORBA::RepositoryId home_repid) - raises (HomeNotFound); - - CCMHome find_home_by_name (in string home_name) - raises (HomeNotFound); - }; - - interface Configurator - { - void configure (in CCMObject comp) - raises (WrongComponentType); - }; - - valuetype ConfigValue - { - public FeatureName name; - public any value; - }; - - typedef sequence<ConfigValue> ConfigValues; - - interface StandardConfigurator : Configurator - { - void set_configuration (in ConfigValues descr); - }; - - interface HomeConfiguration : CCMHome - { - void set_configurator (in Configurator cfg); - void set_configuration_values (in ConfigValues config); - void complete_component_configuration (in boolean b); - void disable_home_configuration(); - }; - - valuetype ComponentPortDescription - { - public FacetDescriptions facets; - public ReceptacleDescriptions receptacles; - public ConsumerDescriptions consumers; - public EmitterDescriptions emitters; - public PublisherDescriptions publishers; - }; - - interface CCMObject : Navigation, Receptacles, Events - { - CORBA::IRObject get_component_def ( ); - CCMHome get_ccm_home( ); - PrimaryKeyBase get_primary_key( ) - raises (NoKeyAvailable); - void remove() - raises (RemoveFailure); - ComponentPortDescription get_all_ports (); - - /// Factory method to return a StandardConfigurator interface. CIAO specific - StandardConfigurator get_standard_configurator ( ); - - /// CIAO specific operations to have some control on when and how - /// to activate components. - /** - * This is all from our work on ARMS where we needed to know whether - * every component has been configured, say for example to use - * logging in the assembly which could in turn be provided by a - * component. To get around all this we are adding some methods on - * this till we think of some standard way to do this. The problem - * is that the deployer should be able to call this as opposed to - * the home calling it as soon as the component is created. - * - * All these operations are called in the order mentioned, ie. the - * deployer calls ciao_preactivate () on all components, then - * ciao_activate and then ciao_postactivate (). The speciality is - * that these operations would be invoked on every target object - * before the next call is made. It is similar to the way - * portable interceptors work, trying to get everything onto the - * flow stack, but differ in the intention. - */ - void ciao_preactivate () - raises (InvalidConfiguration); - - void ciao_activate () - raises (InvalidConfiguration); - - void ciao_postactivate () - raises (InvalidConfiguration); - - void ciao_passivate () - raises (InvalidConfiguration); - - void configuration_complete () - raises (InvalidConfiguration); - }; - - /// @@ Enumeration and DefaultEnumeration are only for EJB to CCM - /// mapping? At any rate, we should be able to skip them for now. - /// @todo Move these then to a seperate file so that the linker can - /// optimize things out of the executable when building staticly - abstract valuetype Enumeration - { - boolean has_more_elements(); - CCMObject next_element(); - }; - - typedef sequence<CCMObject> CCMObjectSeq; - - valuetype DefaultEnumeration : Enumeration - { - private CCMObjectSeq objects; - }; -}; #endif /* CCM_COMPONENT_IDL */ diff --git a/CIAO/ciao/CCM_Configurator.idl b/CIAO/ciao/CCM_Configurator.idl new file mode 100644 index 00000000000..1c908bde6ce --- /dev/null +++ b/CIAO/ciao/CCM_Configurator.idl @@ -0,0 +1,34 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Component.idl + */ + +#if !defined (CCM_CONFIGURATOR_IDL) +#define CCM_CONFIGURATOR_IDL + +#include "CCM_Event.idl" +#include "CCM_Home.idl" + +module Components +{ + typeprefix Components "omg.org"; + + exception WrongComponentType {}; + + interface CCMObject; + + interface Configurator + { + void configure (in CCMObject comp) + raises (WrongComponentType); + }; +}; +#endif /* CCM_CONFIGURATOR_IDLL */ diff --git a/CIAO/ciao/CCM_Container.idl b/CIAO/ciao/CCM_Container.idl index b8a6ab3286b..4eb3f268da9 100644 --- a/CIAO/ciao/CCM_Container.idl +++ b/CIAO/ciao/CCM_Container.idl @@ -17,8 +17,10 @@ #define CCM_CONTAINER_IDL #include "CCM_Component.idl" -#include "orbsvcs/SecurityLevel2.idl" -#include "CCM_Transaction.idl" +#include "CCM_Context.idl" +#include "CCM_CCMException.idl" +#include "CCM_EnterpriseComponent.idl" +#include "CCM_HomeExecutorBase.idl" // *************** Basic Container interfaces *************** @@ -26,44 +28,6 @@ module Components { typeprefix Components "omg.org"; - typedef SecurityLevel2::Credentials Principal; - - local interface CCMContext - { - Principal get_caller_principal(); - - CCMHome get_CCM_home(); - - boolean get_rollback_only() - raises (IllegalState); - - Transaction::UserTransaction get_user_transaction() - raises (IllegalState); - - boolean is_caller_in_role (in string role); - - void set_rollback_only() - raises (IllegalState); - }; - - enum CCMExceptionReason - { - SYSTEM_ERROR, - CREATE_ERROR, - REMOVE_ERROR, - DUPLICATE_KEY, - FIND_ERROR, - OBJECT_NOT_FOUND, - NO_SUCH_ENTITY - }; - - exception CCMException - { - CCMExceptionReason reason; - }; - - local interface EnterpriseComponent {}; - local interface SessionContext : CCMContext { Object get_CCM_object() @@ -103,55 +67,5 @@ module Components void ciao_postactivate () raises (CCMException); }; - - local interface SessionSynchronization - { - void after_begin () - raises (CCMException); - - void before_completion () - raises (CCMException); - - void after_completion (in boolean committed) - raises (CCMException); - }; - - local interface EntityContext : CCMContext - { - Object get_CCM_object () - raises (IllegalState); - - PrimaryKeyBase get_primary_key () - raises (IllegalState); - }; - - local interface EntityComponent : EnterpriseComponent - { - void set_entity_context (in EntityContext ctx) - raises (CCMException); - - void unset_entity_context () - raises (CCMException); - - void ccm_activate () - raises (CCMException); - - void ccm_load () - raises (CCMException); - - void ccm_store () - raises (CCMException); - - void ccm_passivate () - raises (CCMException); - - void ccm_remove () - raises (CCMException); - }; - - - local interface HomeExecutorBase - { - }; }; #endif /* CCM_CONTAINER_IDL */ diff --git a/CIAO/ciao/CCM_Container_Ex.idl b/CIAO/ciao/CCM_Container_Ex.idl index 0aeb481807d..def43f81a46 100644 --- a/CIAO/ciao/CCM_Container_Ex.idl +++ b/CIAO/ciao/CCM_Container_Ex.idl @@ -17,6 +17,8 @@ #define CCM_CONTAINER_EX_IDL #include "CCM_Container.idl" +#include "CCM_Session2Context.idl" +#include "CCM_EntityContext.idl" #include <CosPersistentState.idl> // *************** Extended Container Interfaces *************** @@ -25,16 +27,6 @@ module Components { typeprefix Components "omg.org"; - enum BadComponentReferenceReason - { - NON_LOCAL_REFERENCE, - NON_COMPONENT_REFERENCE, - WRONG_CONTAINER - }; - - typedef CosPersistentState::CatalogBase CatalogBase; - typedef CosPersistentState::_TypeId _TypeId; - typedef short SegmentId; const SegmentId COMPONENT_SEGMENT = 0; @@ -47,55 +39,8 @@ module Components typedef short StateIdType; const StateIdType PERSISTENT_ID = 0; - exception BadComponentReference - { - BadComponentReferenceReason reason; - }; - exception PolicyMismatch {}; - exception PersistenceNotAvailable {}; - exception UnknownActualHome {}; - exception ProxyHomeNotSupported {}; exception InvalidStateIdData {}; - local interface HomeRegistration - { - void register_home (in CCMHome home_ref, - in string home_name); - - void unregister_home (in CCMHome home_ref); - }; - - local interface CCM2Context : CCMContext - { - HomeRegistration get_home_registration (); - - void req_passivate () - raises (PolicyMismatch); - - CatalogBase get_persistence (in _TypeId catalog_type_id) - raises (PersistenceNotAvailable); - }; - - local interface ProxyHomeRegistration : HomeRegistration - { - void register_proxy_home (in CCMHome rhome, - in CCMHome ahome) - raises (UnknownActualHome, - ProxyHomeNotSupported); - }; - - local interface Session2Context : SessionContext, CCM2Context - { - Object create_ref (in CORBA::RepositoryId repid); - - Object create_ref_from_oid (in CORBA::OctetSeq oid, - in CORBA::RepositoryId repid); - - CORBA::OctetSeq get_oid_from_ref (in Object objref) - raises (IllegalState, - BadComponentReference); - }; - abstract valuetype StateIdValue { StateIdType get_sid_type(); diff --git a/CIAO/ciao/CCM_Context.idl b/CIAO/ciao/CCM_Context.idl new file mode 100644 index 00000000000..7379c20b918 --- /dev/null +++ b/CIAO/ciao/CCM_Context.idl @@ -0,0 +1,51 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_CONTEXT_IDL) +#define CCM_CONTEXT_IDL + +#include "orbsvcs/SecurityLevel2.idl" +#include "CCM_Transaction.idl" +#include "CCM_Home.idl" + +// *************** Basic Container interfaces *************** + +module Components +{ + typeprefix Components "omg.org"; + + typedef SecurityLevel2::Credentials Principal; + + exception IllegalState {}; + + local interface CCMContext + { + Principal get_caller_principal(); + + CCMHome get_CCM_home(); + + boolean get_rollback_only() + raises (IllegalState); + + Transaction::UserTransaction get_user_transaction() + raises (IllegalState); + + boolean is_caller_in_role (in string role); + + void set_rollback_only() + raises (IllegalState); + }; +}; +#endif /* CCM_CONTEXT_IDL */ diff --git a/CIAO/ciao/CCM_Cookie.idl b/CIAO/ciao/CCM_Cookie.idl new file mode 100644 index 00000000000..f815d9f1ef9 --- /dev/null +++ b/CIAO/ciao/CCM_Cookie.idl @@ -0,0 +1,29 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -I W:/ACE_wrappers/TAO Component_Base.idl + * tao_idl -I ../.. \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Base.idl + */ + +#if !defined (CCM_COOKIE_IDL) +#define CCM_COOKIE_IDL + +#include "tao/OctetSeq.pidl" + +module Components +{ + typeprefix Components "omg.org"; + + valuetype Cookie + { + private CORBA::OctetSeq cookieValue; + }; +}; +#endif /* CCM_COOKIE_IDL */ diff --git a/CIAO/ciao/CCM_Core.mpc b/CIAO/ciao/CCM_Core.mpc index 339c4d2f387..b8cda16612b 100644 --- a/CIAO/ciao/CCM_Core.mpc +++ b/CIAO/ciao/CCM_Core.mpc @@ -13,18 +13,51 @@ project (CIAO_DnC_Client) : taolib_with_idl, valuetype, ifr_client { dynamicflags = CIAO_CLIENT_BUILD_DLL IDL_Files { + idlflags += -SS -Sci CCM_Base.idl - CCM_Event.idl CCM_Component.idl - CIAO_Value.idl + } + + IDL_Files { + idlflags += -SS + CCM_Cookie.idl + CCM_Enumeration.idl + } + + IDL_Files { + CCM_HomeConfigurator.idl + CCM_StandardConfigurator.idl + CCM_KeylessCCMHome.idl + CCM_Home.idl + CCM_Object.idl + CCM_HomeFinder.idl + CCM_Navigation.idl + CCM_Receptacle.idl + Components.idl + } + + IDL_Files { + CCM_Configurator.idl + CCM_Event.idl } Source_Files { CCM_BaseC.cpp CCM_EventC.cpp CCM_ComponentC.cpp - CIAO_ValueC.cpp + CCM_EnumerationC.cpp + CCM_HomeC.cpp + CCM_ConfiguratorC.cpp + CCM_HomeConfiguratorC.cpp + CCM_KeylessCCMHomeC.cpp + CCM_StandardConfiguratorC.cpp + CCM_HomeFinderC.cpp + CCM_NavigationC.cpp + CCM_ReceptacleC.cpp + CCM_CookieC.cpp + CCM_ObjectC.cpp Client_init.cpp + ComponentsC.cpp } Header_Files { @@ -43,25 +76,60 @@ project (CIAO_DnC_Container) : orbsvcslib, portableserver, security, valuetype, includes += $(CIAO_ROOT)/DAnCE IDL_Files { + idlflags += -SS -Sci + CCM_Context.idl + CCM_CCMException.idl + CCM_EntityComponent.idl + CCM_EntityContext.idl + SwapExec.idl + UpgradeableContext.idl + } + + IDL_Files { + idlflags += -SS + CCM_CCM2Context.idl + CCM_ProxyHomeRegistration.idl + CCM_Session2Context.idl CCM_Transaction.idl CosPersistentState.idl CCM_Container.idl CCM_Container_Ex.idl - SwapExec.idl - UpgradeableContext.idl + CCM_EnterpriseComponent.idl + CCM_SessionSynchronization.idl + CCM_HomeRegistration.idl + CCM_HomeExecutorBase.idl } Source_Files { CCM_TransactionC.cpp CosPersistentStateC.cpp CCM_ContainerC.cpp + CCM_EnterpriseComponentC.cpp + CCM_SessionSynchronizationC.cpp + CCM_CCMExceptionC.cpp + CCM_ContextC.cpp CCM_Container_ExC.cpp - CCM_BaseS.cpp + CCM_ProxyHomeRegistrationC.cpp + CCM_Session2ContextC.cpp + CCM_CCM2ContextC.cpp + CCM_HomeRegistrationC.cpp + CCM_HomeExecutorBaseC.cpp + CCM_EntityContextC.cpp + CCM_EntityComponentC.cpp CCM_EventS.cpp - CCM_ComponentS.cpp + CCM_ConfiguratorS.cpp + CCM_HomeConfiguratorS.cpp + CCM_KeylessCCMHomeS.cpp + CCM_StandardConfiguratorS.cpp + CCM_HomeS.cpp + CCM_ObjectS.cpp + CCM_HomeFinderS.cpp + CCM_NavigationS.cpp + CCM_ReceptacleS.cpp SwapExecC.cpp UpgradeableContextC.cpp Cookies.cpp + ComponentsS.cpp } } @@ -82,29 +150,45 @@ project(Deployment_stub) : taolib_with_idl, valuetype, ifr_client, ciao_events_b dynamicflags = DEPLOYMENT_STUB_BUILD_DLL IDL_Files { - NodeApplication_CallBack.idl - Deployment_Core.idl - Deployment_Base.idl - Deployment_Data.idl + idlflags += -SS -Sci Packaging_Data.idl Target_Data.idl + } + + IDL_Files { + idlflags += -SS + Deployment_Base.idl + Deployment_Connection.idl + Deployment_Data.idl + Deployment_TargetData.idl + ServerResources.idl + Deployment_Events.idl + } + + IDL_Files { + TargetManager.idl + NodeApplication_CallBack.idl + Deployment_Core.idl + Deployment_Application.idl Deployment.idl NodeManager.idl NodeApplicationManager.idl DomainApplicationManager.idl ExecutionManager.idl RepositoryManager.idl - ServerResources.idl - Deployment_Events.idl } Source_Files { Deployment_CoreC.cpp Deployment_BaseC.cpp + Deployment_ConnectionC.cpp Deployment_DataC.cpp + Deployment_TargetDataC.cpp + Deployment_ApplicationC.cpp Packaging_DataC.cpp Target_DataC.cpp DeploymentC.cpp + TargetManagerC.cpp NodeManagerC.cpp NodeApplicationManagerC.cpp DomainApplicationManagerC.cpp @@ -134,10 +218,7 @@ project(Deployment_svnt) : taolib_with_idl, portableserver, valuetype, ifr_clien Source_Files { Deployment_CoreS.cpp - Deployment_BaseS.cpp - Deployment_DataS.cpp - Packaging_DataS.cpp - Target_DataS.cpp + Deployment_ApplicationS.cpp DeploymentS.cpp RepositoryManagerS.cpp NodeManagerS.cpp @@ -145,9 +226,8 @@ project(Deployment_svnt) : taolib_with_idl, portableserver, valuetype, ifr_clien DomainApplicationManagerS.cpp ExecutionManagerS.cpp NodeApp_CB_Impl.cpp + TargetManagerS.cpp NodeApplication_CallBackS.cpp - ServerResourcesS.cpp - Deployment_EventsS.cpp } } diff --git a/CIAO/ciao/CCM_EnterpriseComponent.idl b/CIAO/ciao/CCM_EnterpriseComponent.idl new file mode 100644 index 00000000000..b3f3d1b9432 --- /dev/null +++ b/CIAO/ciao/CCM_EnterpriseComponent.idl @@ -0,0 +1,25 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_ENTERPRISECOMPONENT_IDL) +#define CCM_ENTERPRISECOMPONENT_IDL + +module Components +{ + typeprefix Components "omg.org"; + + local interface EnterpriseComponent {}; +}; +#endif /* CCM_CONTAINER_IDL */ diff --git a/CIAO/ciao/CCM_EntityComponent.idl b/CIAO/ciao/CCM_EntityComponent.idl new file mode 100644 index 00000000000..28342b37b84 --- /dev/null +++ b/CIAO/ciao/CCM_EntityComponent.idl @@ -0,0 +1,51 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_ENTITYCOMPONENT_IDL) +#define CCM_ENTITYCOMPONENT_IDL + +#include "CCM_CCMException.idl" +#include "CCM_EnterpriseComponent.idl" +#include "CCM_EntityContext.idl" + +module Components +{ + typeprefix Components "omg.org"; + + local interface EntityComponent : EnterpriseComponent + { + void set_entity_context (in EntityContext ctx) + raises (CCMException); + + void unset_entity_context () + raises (CCMException); + + void ccm_activate () + raises (CCMException); + + void ccm_load () + raises (CCMException); + + void ccm_store () + raises (CCMException); + + void ccm_passivate () + raises (CCMException); + + void ccm_remove () + raises (CCMException); + }; +}; +#endif /* CCM_ENTITYCOMPONENT_IDL */ diff --git a/CIAO/ciao/CCM_EntityContext.idl b/CIAO/ciao/CCM_EntityContext.idl new file mode 100644 index 00000000000..87b199c74c1 --- /dev/null +++ b/CIAO/ciao/CCM_EntityContext.idl @@ -0,0 +1,35 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_ENTITYCONTEXT_IDL) +#define CCM_ENTITYCONTEXT_IDL + +#include "CCM_Context.idl" +#include "CCM_Object.idl" + +module Components +{ + typeprefix Components "omg.org"; + + local interface EntityContext : CCMContext + { + Object get_CCM_object () + raises (IllegalState); + + PrimaryKeyBase get_primary_key () + raises (IllegalState); + }; +}; +#endif /* CCM_ENTITYCONTEXT_IDL */ diff --git a/CIAO/ciao/CCM_Enumeration.idl b/CIAO/ciao/CCM_Enumeration.idl new file mode 100644 index 00000000000..cec9e60da19 --- /dev/null +++ b/CIAO/ciao/CCM_Enumeration.idl @@ -0,0 +1,38 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Component.idl + */ + +#if !defined (CCM_ENUMERATION_IDL) +#define CCM_ENUMERATION_IDL + +#include "CCM_Object.idl" + +module Components +{ + typeprefix Components "omg.org"; + + /// @@ Enumeration and DefaultEnumeration are only for EJB to CCM + /// mapping? At any rate, we should be able to skip them for now. + abstract valuetype Enumeration + { + boolean has_more_elements(); + CCMObject next_element(); + }; + + typedef sequence<CCMObject> CCMObjectSeq; + + valuetype DefaultEnumeration : Enumeration + { + private CCMObjectSeq objects; + }; +}; +#endif /* CCM_ENUMERATION_IDL */ diff --git a/CIAO/ciao/CCM_Event.idl b/CIAO/ciao/CCM_Event.idl index 6349682550a..b149e0bbd28 100644 --- a/CIAO/ciao/CCM_Event.idl +++ b/CIAO/ciao/CCM_Event.idl @@ -17,6 +17,10 @@ #define CCM_EVENT_IDL #include "CCM_Base.idl" +#include "CCM_Navigation.idl" +#include "CCM_Receptacle.idl" +#include "CCM_Cookie.idl" +#include "tao/orb_types.pidl" module Components { @@ -24,6 +28,11 @@ module Components abstract valuetype EventBase {}; + exception BadEventType + { + CORBA::RepositoryId expected_event_type; + }; + interface EventConsumerBase { void push_event (in EventBase evt) raises (BadEventType); diff --git a/CIAO/ciao/CCM_Home.idl b/CIAO/ciao/CCM_Home.idl new file mode 100644 index 00000000000..33fa0873f62 --- /dev/null +++ b/CIAO/ciao/CCM_Home.idl @@ -0,0 +1,51 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Component.idl + */ + +#if !defined (CCM_HOME_IDL) +#define CCM_HOME_IDL + +#include "tao/IFR_Client/IFR_Base.pidl" + +module Components +{ + typeprefix Components "omg.org"; + + typedef unsigned long FailureReason; + + exception CreateFailure { + FailureReason reason; + }; + exception FinderFailure + { + FailureReason reason; + }; + exception RemoveFailure + { + FailureReason reason; + }; + + exception DuplicateKeyValue {}; + exception InvalidKey {}; + exception UnknownKeyValue {}; + + interface CCMObject; + + interface CCMHome + { + CORBA::IRObject get_component_def (); + CORBA::IRObject get_home_def (); + void remove_component ( in CCMObject comp) + raises (RemoveFailure); + }; +}; +#endif /* CCM_COMPONENT_IDL */ diff --git a/CIAO/ciao/CCM_HomeConfigurator.idl b/CIAO/ciao/CCM_HomeConfigurator.idl new file mode 100644 index 00000000000..d2c254ce078 --- /dev/null +++ b/CIAO/ciao/CCM_HomeConfigurator.idl @@ -0,0 +1,32 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Component.idl + */ + +#if !defined (CCM_HOMECONFIGURATOR_IDL) +#define CCM_HOMECONFIGURATOR_IDL + +#include "CCM_Configurator.idl" +#include "CCM_StandardConfigurator.idl" + +module Components +{ + typeprefix Components "omg.org"; + + interface HomeConfiguration : CCMHome + { + void set_configurator (in Configurator cfg); + void set_configuration_values (in ConfigValues config); + void complete_component_configuration (in boolean b); + void disable_home_configuration(); + }; +}; +#endif /* CCM_HOMECONFIGURATOR_IDL */ diff --git a/CIAO/ciao/CCM_HomeExecutorBase.idl b/CIAO/ciao/CCM_HomeExecutorBase.idl new file mode 100644 index 00000000000..e1db55b9afc --- /dev/null +++ b/CIAO/ciao/CCM_HomeExecutorBase.idl @@ -0,0 +1,27 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_HOMEEXECUTORBASE_IDL) +#define CCM_HOMEEXECUTORBASE_IDL + +module Components +{ + typeprefix Components "omg.org"; + + local interface HomeExecutorBase + { + }; +}; +#endif /* CCM_HOMEEXECUTORBASE_IDL */ diff --git a/CIAO/ciao/CCM_HomeFinder.idl b/CIAO/ciao/CCM_HomeFinder.idl new file mode 100644 index 00000000000..f5ffca44442 --- /dev/null +++ b/CIAO/ciao/CCM_HomeFinder.idl @@ -0,0 +1,39 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_HomeFinder.idl + */ + +#if !defined (CCM_HOMEFINDER_IDL) +#define CCM_HOMEFINDER_IDL + +#include "tao/orb_types.pidl" + +module Components +{ + typeprefix Components "omg.org"; + + exception HomeNotFound {}; + + interface CCMHome; + + interface HomeFinder + { + CCMHome find_home_by_component_type (in CORBA::RepositoryId comp_repid) + raises (HomeNotFound); + + CCMHome find_home_by_home_type (in CORBA::RepositoryId home_repid) + raises (HomeNotFound); + + CCMHome find_home_by_name (in string home_name) + raises (HomeNotFound); + }; +}; +#endif /* CCM_HOMEFINDER_IDL */ diff --git a/CIAO/ciao/CCM_HomeRegistration.idl b/CIAO/ciao/CCM_HomeRegistration.idl new file mode 100644 index 00000000000..f724b908337 --- /dev/null +++ b/CIAO/ciao/CCM_HomeRegistration.idl @@ -0,0 +1,34 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container_Ex.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_HOMEREGISTRATION_IDL) +#define CCM_HOMEREGISTRATION_IDL + +#include "CCM_Home.idl" + +module Components +{ + typeprefix Components "omg.org"; + + local interface HomeRegistration + { + void register_home (in CCMHome home_ref, + in string home_name); + + void unregister_home (in CCMHome home_ref); + }; + +}; +#endif /* CCM_HOMEREGISTRATION_IDL */ diff --git a/CIAO/ciao/CCM_KeylessCCMHome.idl b/CIAO/ciao/CCM_KeylessCCMHome.idl new file mode 100644 index 00000000000..3b27b2b8cb2 --- /dev/null +++ b/CIAO/ciao/CCM_KeylessCCMHome.idl @@ -0,0 +1,30 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Component.idl + */ + +#if !defined (CCM_KEYLESSCCMHOME_IDL) +#define CCM_KEYLESSCCMHOME_IDL + +#include "CCM_Home.idl" + +module Components +{ + typeprefix Components "omg.org"; + + interface KeylessCCMHome + { + CCMObject create_component() + raises (CreateFailure); + }; + +}; +#endif /* CCM_KEYLESSCCMHOME_IDL */ diff --git a/CIAO/ciao/CCM_Navigation.idl b/CIAO/ciao/CCM_Navigation.idl new file mode 100644 index 00000000000..6305d8fe3c9 --- /dev/null +++ b/CIAO/ciao/CCM_Navigation.idl @@ -0,0 +1,53 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -I W:/ACE_wrappers/TAO Component_Base.idl + * tao_idl -I ../.. \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Navigation.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_NAVIGATION_IDL) +#define CCM_NAVIGATION_IDL + +#include "tao/orb_types.pidl" + +module Components +{ + typeprefix Components "omg.org"; + + typedef string FeatureName; + typedef sequence<FeatureName> NameList; + + valuetype PortDescription + { + public FeatureName name; + public CORBA::RepositoryId type_id; + }; + + valuetype FacetDescription : PortDescription + { + public Object facet_ref; + }; + + typedef sequence<FacetDescription> FacetDescriptions; + + exception InvalidName {}; + interface Navigation + { + Object provide_facet (in FeatureName name) + raises (InvalidName); + FacetDescriptions get_all_facets(); + FacetDescriptions get_named_facets (in NameList names) + raises (InvalidName); + boolean same_component (in Object object_ref); + }; +}; +#endif /* CCM_NAVIGATION_IDL */ diff --git a/CIAO/ciao/CCM_Object.idl b/CIAO/ciao/CCM_Object.idl new file mode 100644 index 00000000000..fc7309ddcdd --- /dev/null +++ b/CIAO/ciao/CCM_Object.idl @@ -0,0 +1,100 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Component.idl + */ + +#if !defined (CCM_OBJECT_IDL) +#define CCM_OBJECT_IDL + +#include "CCM_Event.idl" +#include "CCM_Navigation.idl" +#include "CCM_Home.idl" + +module Components +{ + typeprefix Components "omg.org"; + + typedef FailureReason InvalidConfigurationReason; + const InvalidConfigurationReason UnknownConfigValueName = 0; + const InvalidConfigurationReason InvalidConfigValueType = 1; + const InvalidConfigurationReason ConfigValueRequired = 2; + const InvalidConfigurationReason ConfigValueNotExpected = 3; + + exception InvalidConfiguration + { + InvalidConfigurationReason reason; + FeatureName name; + }; + + abstract valuetype PrimaryKeyBase {}; + + valuetype ComponentPortDescription + { + public FacetDescriptions facets; + public ReceptacleDescriptions receptacles; + public ConsumerDescriptions consumers; + public EmitterDescriptions emitters; + public PublisherDescriptions publishers; + }; + + interface StandardConfigurator; + + exception NoKeyAvailable {}; + + interface CCMObject : Navigation, Receptacles, Events + { + CORBA::IRObject get_component_def ( ); + CCMHome get_ccm_home( ); + PrimaryKeyBase get_primary_key( ) + raises (NoKeyAvailable); + void remove() + raises (RemoveFailure); + ComponentPortDescription get_all_ports (); + + /// Factory method to return a StandardConfigurator interface. CIAO specific + StandardConfigurator get_standard_configurator ( ); + + /// CIAO specific operations to have some control on when and how + /// to activate components. + /** + * This is all from our work on ARMS where we needed to know whether + * every component has been configured, say for example to use + * logging in the assembly which could in turn be provided by a + * component. To get around all this we are adding some methods on + * this till we think of some standard way to do this. The problem + * is that the deployer should be able to call this as opposed to + * the home calling it as soon as the component is created. + * + * All these operations are called in the order mentioned, ie. the + * deployer calls ciao_preactivate () on all components, then + * ciao_activate and then ciao_postactivate (). The speciality is + * that these operations would be invoked on every target object + * before the next call is made. It is similar to the way + * portable interceptors work, trying to get everything onto the + * flow stack, but differ in the intention. + */ + void ciao_preactivate () + raises (InvalidConfiguration); + + void ciao_activate () + raises (InvalidConfiguration); + + void ciao_postactivate () + raises (InvalidConfiguration); + + void ciao_passivate () + raises (InvalidConfiguration); + + void configuration_complete () + raises (InvalidConfiguration); + }; +}; +#endif /* CCM_OBJECT_IDL */ diff --git a/CIAO/ciao/CCM_ProxyHomeRegistration.idl b/CIAO/ciao/CCM_ProxyHomeRegistration.idl new file mode 100644 index 00000000000..f15cce2a25e --- /dev/null +++ b/CIAO/ciao/CCM_ProxyHomeRegistration.idl @@ -0,0 +1,36 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container_Ex.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_PROXYHOMEREGISTRATION_IDL) +#define CCM_PROXYHOMEREGISTRATION_IDL + +#include "CCM_HomeRegistration.idl" + +module Components +{ + typeprefix Components "omg.org"; + + exception UnknownActualHome {}; + exception ProxyHomeNotSupported {}; + + local interface ProxyHomeRegistration : HomeRegistration + { + void register_proxy_home (in CCMHome rhome, + in CCMHome ahome) + raises (UnknownActualHome, + ProxyHomeNotSupported); + }; +}; +#endif /* CCM_PROXYHOMEREGISTRATION_IDL */ diff --git a/CIAO/ciao/CCM_Receptacle.idl b/CIAO/ciao/CCM_Receptacle.idl new file mode 100644 index 00000000000..5aafe192c73 --- /dev/null +++ b/CIAO/ciao/CCM_Receptacle.idl @@ -0,0 +1,68 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -I W:/ACE_wrappers/TAO Component_Base.idl + * tao_idl -I ../.. \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Base.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_RECEPTACLE_IDL) +#define CCM_RECEPTACLE_IDL + +#include "CCM_Base.idl" +#include "CCM_Navigation.idl" +#include "CCM_Cookie.idl" + +module Components +{ + typeprefix Components "omg.org"; + + valuetype ConnectionDescription + { + public Cookie ck; + public Object objref; + }; + typedef sequence<ConnectionDescription> ConnectionDescriptions; + + valuetype ReceptacleDescription : PortDescription + { + public boolean is_multiple; + public ConnectionDescriptions connections; + }; + typedef sequence<ReceptacleDescription> ReceptacleDescriptions; + + exception ExceededConnectionLimit {}; + exception CookieRequired {}; + + interface Receptacles + { + Cookie connect (in FeatureName name, in Object connection ) + raises (InvalidName, + InvalidConnection, + AlreadyConnected, + ExceededConnectionLimit); + + Object disconnect (in FeatureName name, in Cookie ck) + raises (InvalidName, + InvalidConnection, + CookieRequired, + NoConnection); + + ConnectionDescriptions get_connections (in FeatureName name) + raises (InvalidName); + + ReceptacleDescriptions get_all_receptacles (); + + ReceptacleDescriptions get_named_receptacles (in NameList names) + raises (InvalidName); + }; +}; +#endif /* CCM_RECEPTACLE_IDL */ diff --git a/CIAO/ciao/CCM_Session2Context.idl b/CIAO/ciao/CCM_Session2Context.idl new file mode 100644 index 00000000000..72b6b72ef04 --- /dev/null +++ b/CIAO/ciao/CCM_Session2Context.idl @@ -0,0 +1,50 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container_Ex.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_SESSION2CONTEXT_IDL) +#define CCM_SESSION2CONTEXT_IDL + +#include "CCM_CCM2Context.idl" + +// *************** Extended Container Interfaces *************** + +module Components +{ + typeprefix Components "omg.org"; + + enum BadComponentReferenceReason + { + NON_LOCAL_REFERENCE, + NON_COMPONENT_REFERENCE, + WRONG_CONTAINER + }; + exception BadComponentReference + { + BadComponentReferenceReason reason; + }; + + local interface Session2Context : SessionContext, CCM2Context + { + Object create_ref (in CORBA::RepositoryId repid); + + Object create_ref_from_oid (in CORBA::OctetSeq oid, + in CORBA::RepositoryId repid); + + CORBA::OctetSeq get_oid_from_ref (in Object objref) + raises (IllegalState, + BadComponentReference); + }; +}; +#endif /* CCM_SESSION2CONTEXT_IDL */ diff --git a/CIAO/ciao/CCM_SessionSynchronization.idl b/CIAO/ciao/CCM_SessionSynchronization.idl new file mode 100644 index 00000000000..1e94b10ac34 --- /dev/null +++ b/CIAO/ciao/CCM_SessionSynchronization.idl @@ -0,0 +1,39 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Container.idl + */ + +//#define CIAO_HAS_IMPORT_KEYWORD + +#if !defined (CCM_SESSIONSYNCHRONIZATION_IDL) +#define CCM_SESSIONSYNCHRONIZATION_IDL + +#include "CCM_CCMException.idl" + +// *************** Basic Container interfaces *************** + +module Components +{ + typeprefix Components "omg.org"; + + local interface SessionSynchronization + { + void after_begin () + raises (CCMException); + + void before_completion () + raises (CCMException); + + void after_completion (in boolean committed) + raises (CCMException); + }; +}; +#endif /* CCM_SESSIONSYNCHRONIZATION_IDL */ diff --git a/CIAO/ciao/CCM_StandardConfigurator.idl b/CIAO/ciao/CCM_StandardConfigurator.idl new file mode 100644 index 00000000000..e22ea585498 --- /dev/null +++ b/CIAO/ciao/CCM_StandardConfigurator.idl @@ -0,0 +1,37 @@ +// $Id$ + +/** + * @@ Compile this file with: + * + * tao_idl -Gv -I ../.. -I ../../orbsvcs/orbsvcs \ + * -Wb,export_macro=CIAO_Export \ + * -Wb,export_include=CIAO_export.h \ + * -Wb,pre_include="ace/pre.h" \ + * -Wb,post_include="ace/post.h" \ + * CCM_Component.idl + */ + +#if !defined (CCM_STANDARDCONFIGURATOR_IDL) +#define CCM_STANDARDCONFIGURATOR_IDL + +#include "CCM_Configurator.idl" + +module Components +{ + typeprefix Components "omg.org"; + + valuetype ConfigValue + { + public FeatureName name; + public any value; + }; + + typedef sequence<ConfigValue> ConfigValues; + + interface StandardConfigurator : Configurator + { + void set_configuration (in ConfigValues descr); + }; + +}; +#endif /* CCM_STANDARDCONFIGURATOR_IDL */ diff --git a/CIAO/ciao/CIAO_Value.idl b/CIAO/ciao/CIAO_Value.idl deleted file mode 100644 index 52efed12f75..00000000000 --- a/CIAO/ciao/CIAO_Value.idl +++ /dev/null @@ -1,21 +0,0 @@ -// $Id$ - -/** - * @file CIAO_Value.idl - * - * @brief Some CIAO valuetype extension for internal use. - */ - -#include "CCM_Base.idl" - -/** - * @ Note: This needs deprecation. - * - */ -module CIAO -{ - valuetype Cookie : Components::Cookie - { - CORBA::OctetSeq get_cookie (); - }; -}; diff --git a/CIAO/ciao/Client_init.cpp b/CIAO/ciao/Client_init.cpp index 7dd0b874b54..15325cf7a4e 100644 --- a/CIAO/ciao/Client_init.cpp +++ b/CIAO/ciao/Client_init.cpp @@ -3,7 +3,7 @@ #include "Client_init.h" #include "CIAO_common.h" #include "CCM_ComponentC.h" -#include "CIAO_ValueC.h" +#include "CCM_StandardConfiguratorC.h" #include "ace/Env_Value_T.h" int @@ -11,8 +11,6 @@ CIAO::Client_init (CORBA::ORB_ptr o) { CIAO_REGISTER_VALUE_FACTORY (o, Components::Cookie_init, Components::Cookie); - CIAO_REGISTER_VALUE_FACTORY (o, Components::Cookie_init, - CIAO::Cookie); CIAO_REGISTER_VALUE_FACTORY (o, Components::PortDescription_init, Components::PortDescription); CIAO_REGISTER_VALUE_FACTORY (o, Components::FacetDescription_init, diff --git a/CIAO/ciao/Components.idl b/CIAO/ciao/Components.idl index ad85c28e448..d73c101d2cc 100644 --- a/CIAO/ciao/Components.idl +++ b/CIAO/ciao/Components.idl @@ -10,6 +10,9 @@ #define CIAO_COMPONENTS_IDL #include "CCM_Component.idl" +#include "CCM_KeylessCCMHome.idl" +#include "CCM_Home.idl" +#include "CCM_Object.idl" #endif /* CIAO_COMPONENTS_IDL */ diff --git a/CIAO/ciao/ComponentsC.h b/CIAO/ciao/ComponentsC.h deleted file mode 100644 index f097a6ead82..00000000000 --- a/CIAO/ciao/ComponentsC.h +++ /dev/null @@ -1,101 +0,0 @@ -// -*- C++ -*- -// -// $Id$ - -// **** Code generated by the The ACE ORB (TAO) IDL Compiler **** -// TAO and the TAO IDL Compiler have been developed by: -// Center for Distributed Object Computing -// Washington University -// St. Louis, MO -// USA -// http://www.cs.wustl.edu/~schmidt/doc-center.html -// and -// Distributed Object Computing Laboratory -// University of California at Irvine -// Irvine, CA -// USA -// http://doc.ece.uci.edu/ -// and -// Institute for Software Integrated Systems -// Vanderbilt University -// Nashville, TN -// USA -// http://www.isis.vanderbilt.edu/ -// -// Information about TAO is available at: -// http://www.cs.wustl.edu/~schmidt/TAO.html - -// TAO_IDL - Generated from -// be/be_codegen.cpp:150 - -#ifndef _TAO_IDL_COMPONENTSC_H_ -#define _TAO_IDL_COMPONENTSC_H_ - -#include "tao/ORB.h" - -#if !defined (ACE_LACKS_PRAGMA_ONCE) -# pragma once -#endif /* ACE_LACKS_PRAGMA_ONCE */ - -#include "tao/CDR.h" -#include "tao/Environment.h" -#include "tao/AnyTypeCode/TypeCode.h" -#include "tao/Versioned_Namespace.h" - -#include "CCM_ComponentC.h" - -#if defined (TAO_EXPORT_MACRO) -#undef TAO_EXPORT_MACRO -#endif -#define TAO_EXPORT_MACRO - -#if defined (TAO_EXPORT_NESTED_CLASSES) -# if defined (TAO_EXPORT_NESTED_MACRO) -# undef TAO_EXPORT_NESTED_MACRO -# endif /* defined (TAO_EXPORT_NESTED_MACRO) */ -# define TAO_EXPORT_NESTED_MACRO -#endif /* TAO_EXPORT_NESTED_CLASSES */ - -#if defined(_MSC_VER) -#pragma warning(push) -#pragma warning(disable:4250) -#endif /* _MSC_VER */ - -#if defined (__BORLANDC__) -#pragma option push -w-rvl -w-rch -w-ccc -w-inl -#endif /* __BORLANDC__ */ - -// TAO_IDL - Generated from -// be/be_visitor_traits.cpp:50 - -// Traits specializations. - -TAO_BEGIN_VERSIONED_NAMESPACE_DECL -namespace TAO -{ -} -TAO_END_VERSIONED_NAMESPACE_DECL - -// TAO_IDL - Generated from -// be/be_visitor_root/cdr_op.cpp:48 - -#ifndef __ACE_INLINE__ - -// TAO_IDL - Generated from -// be/be_visitor_root/cdr_op.cpp:64 - -#endif /* __ACE_INLINE__ */ - -// TAO_IDL - Generated from -// be/be_codegen.cpp:911 - - -#if defined(_MSC_VER) -#pragma warning(pop) -#endif /* _MSC_VER */ - -#if defined (__BORLANDC__) -#pragma option pop -#endif /* __BORLANDC__ */ - -#endif /* ifndef */ diff --git a/CIAO/ciao/ComponentsS.h b/CIAO/ciao/ComponentsS.h deleted file mode 100644 index 9a025aac8d7..00000000000 --- a/CIAO/ciao/ComponentsS.h +++ /dev/null @@ -1,63 +0,0 @@ -// -*- C++ -*- -// -// $Id$ - -// **** Code generated by the The ACE ORB (TAO) IDL Compiler **** -// TAO and the TAO IDL Compiler have been developed by: -// Center for Distributed Object Computing -// Washington University -// St. Louis, MO -// USA -// http://www.cs.wustl.edu/~schmidt/doc-center.html -// and -// Distributed Object Computing Laboratory -// University of California at Irvine -// Irvine, CA -// USA -// http://doc.ece.uci.edu/ -// and -// Institute for Software Integrated Systems -// Vanderbilt University -// Nashville, TN -// USA -// http://www.isis.vanderbilt.edu/ -// -// Information about TAO is available at: -// http://www.cs.wustl.edu/~schmidt/TAO.html - -// TAO_IDL - Generated from -// be/be_codegen.cpp:390 - -#ifndef _TAO_IDL_COMPONENTSS_H_ -#define _TAO_IDL_COMPONENTSS_H_ - - -#include "CCM_ComponentS.h" -#include "ComponentsC.h" - -#if !defined (ACE_LACKS_PRAGMA_ONCE) -# pragma once -#endif /* ACE_LACKS_PRAGMA_ONCE */ - -#include "tao/Collocation_Proxy_Broker.h" -#include "tao/PortableServer/PortableServer.h" -#include "tao/PortableServer/Servant_Base.h" - -#if defined(_MSC_VER) -#pragma warning(push) -#pragma warning(disable:4250) -#endif /* _MSC_VER */ - -#if defined (__BORLANDC__) -#pragma option push -w-rvl -w-rch -w-ccc -w-inl -#endif /* __BORLANDC__ */ - -#if defined(_MSC_VER) -#pragma warning(pop) -#endif /* _MSC_VER */ - -#if defined (__BORLANDC__) -#pragma option pop -#endif /* __BORLANDC__ */ - -#endif /* ifndef */ diff --git a/CIAO/ciao/Container_Base.pidl b/CIAO/ciao/Container_Base.pidl deleted file mode 100644 index e698ea66b45..00000000000 --- a/CIAO/ciao/Container_Base.pidl +++ /dev/null @@ -1,33 +0,0 @@ -// $Id$ - -/** - * CIAO's internal container interface definitions. - */ - -//#define CIAO_HAS_IMPORT_KEYWORD - -#if !defined (CONTAINER_BASE_PIDL) -#define CONTAINER_BASE_PIDL - -#include "CIAO_Component.pidl" -#include <SecurityLevel2.idl> -#include "CIAO_Transaction.pidl" - -// *************** Basic Container interfaces *************** - -module CIAO -{ - typeprefix Components "wustl.edu"; - - local interface Container - { - // Return the POA - PortableServer::POA the_POA (); - }; - - local interface SessionContainer - { - - }; -}; -#endif /* CONTAINER_BASE_PIDL */ diff --git a/CIAO/ciao/Cookies.h b/CIAO/ciao/Cookies.h index dd4f11407a8..995629378d2 100644 --- a/CIAO/ciao/Cookies.h +++ b/CIAO/ciao/Cookies.h @@ -12,15 +12,13 @@ #define CIAO_COOKIES_H #include /**/ "ace/pre.h" -#include "CCM_BaseC.h" - +#include "CCM_CookieC.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ #include "CIAO_Container_Export.h" -#include "CIAO_ValueC.h" #include "ace/Active_Map_Manager.h" namespace CIAO diff --git a/CIAO/ciao/CosPersistentState.idl b/CIAO/ciao/CosPersistentState.idl index 64f127539e2..a5211d071aa 100644 --- a/CIAO/ciao/CosPersistentState.idl +++ b/CIAO/ciao/CosPersistentState.idl @@ -13,11 +13,12 @@ #define CIAO_COSPERSISTENTSTATE_PIDL module CosPersistentState { - local interface CatalogBase - { - }; - typedef sequence<octet> _TypeId; - typedef string Pid; + local interface CatalogBase + { + }; + + typedef sequence<octet> _TypeId; + typedef string Pid; }; #endif /* CIAO_COSPERSISTENTSTATE_PIDL */ diff --git a/CIAO/ciao/Deployment.idl b/CIAO/ciao/Deployment.idl index cf3b49ff457..d7c952a8c51 100644 --- a/CIAO/ciao/Deployment.idl +++ b/CIAO/ciao/Deployment.idl @@ -35,27 +35,7 @@ module Deployment { string name; string plan_uuid; }; - - /** - * @struct Sched_Params - * @brief Carries Scheduling Params - * @description CIAO specific structure to carry the scheduling params - * to set the process, required by RACE - */ - struct Sched_Params - { - long policy_; - long priority_; - long scope_; - long msec_; - }; - typedef sequence < ComponentPlan > ComponentPlans; - - typedef sequence < Application > Applications; - - interface Logger { - }; }; #endif /* DEPLOYMENT_IDL */ diff --git a/CIAO/ciao/Deployment_Application.idl b/CIAO/ciao/Deployment_Application.idl new file mode 100644 index 00000000000..4ae531357c5 --- /dev/null +++ b/CIAO/ciao/Deployment_Application.idl @@ -0,0 +1,34 @@ +// $Id$ + +#if !defined (DEPLOYMENT_APPLICATION_IDL) +#define DEPLOYMENT_APPLICATION_IDL + +#include "Deployment_Connection.idl" + +module Deployment +{ + exception StartError + { + string name; + string reason; + }; + + exception InvalidConnection + { + string name; + string reason; + }; + + interface Application + { + void finishLaunch (in Connections providedReference, + in boolean start, + in boolean is_ReDAC) + raises (StartError, InvalidConnection); + void start () + raises (StartError); + }; + typedef sequence < Application > Applications; +}; + +#endif /* DEPLOYMENT_APPLICATION_IDL */ diff --git a/CIAO/ciao/Deployment_Base.idl b/CIAO/ciao/Deployment_Base.idl index caadccf2fee..5b9618dfab2 100644 --- a/CIAO/ciao/Deployment_Base.idl +++ b/CIAO/ciao/Deployment_Base.idl @@ -4,10 +4,23 @@ #define DEPLOYMENT_BASE_IDL #include <orb.idl> -#include "Deployment_Core.idl" module Deployment { + struct Property + { + string name; + any value; + }; + typedef sequence < Property > Properties; + + struct Requirement { + string resourceType; + string name; + Properties property; + }; + typedef sequence < Requirement > Requirements; + enum SatisfierPropertyKind { Quantity, Capacity, @@ -23,65 +36,7 @@ module Deployment { boolean dynamic; any value; }; - typedef sequence < SatisfierProperty > SatisfierProperties; - - struct SharedResource { - string name; - ::CORBA::StringSeq resourceType; - ::CORBA::ULongSeq nodeRef; - SatisfierProperties property; - }; - - typedef sequence < SharedResource > SharedResources; - - struct Resource { - string name; - ::CORBA::StringSeq resourceType; - SatisfierProperties property; - }; - - typedef sequence < Resource > Resources; - - struct Node { - string name; - string label; - ::CORBA::ULongSeq sharedResourceRef; - ::CORBA::ULongSeq connectionRef; - Resources resource; - }; - - typedef sequence < Node > Nodes; - - struct Interconnect { - string name; - string label; - ::CORBA::ULongSeq connectionRef; - ::CORBA::ULongSeq connectRef; - Resources resource; - }; - - typedef sequence < Interconnect > Interconnects; - - struct Bridge { - string name; - string label; - ::CORBA::ULongSeq connectRef; - Resources resource; - }; - - typedef sequence < Bridge > Bridges; - - struct Domain { - string UUID; - string label; - SharedResources sharedResource; - Nodes node; - Interconnects interconnect; - Bridges bridge; - Properties infoProperty; - }; - }; #endif /* DEPLOYMENT_BASE_IDL */ diff --git a/CIAO/ciao/Deployment_Connection.idl b/CIAO/ciao/Deployment_Connection.idl new file mode 100644 index 00000000000..e8908eaeaba --- /dev/null +++ b/CIAO/ciao/Deployment_Connection.idl @@ -0,0 +1,43 @@ +// $Id$ + +#if !defined (DEPLOYMENT_CONNECTION_IDL) +#define DEPLOYMENT_CONNECTION_IDL + +#include "Deployment_Data.idl" +#include <ciaosvcs/Events/CIAO_Events_Base/CIAO_Events.idl> + +// *************** Packaging and Deployment *************** +module Deployment +{ + typedef sequence < Object > Endpoints; + //typedef Object Endpoint; + + // CIAO's specific <Connection> type defition. + // To avoid the connection info in the plan being passed to the + // local node and to make the implementation not very cumbersome + // I changed the connection struct to include some extra informations. + struct Connection + { + string instanceName; + string portName; + CCMComponentPortKind kind; + + string endpointInstanceName; // CIAO specific extension + string endpointPortName; // CIAO specific extension + + // the endpoints member is change to endpoint. + // Since we will not have more than 1 objref in there. + Object endpoint; + + // A wrapper facade interface to provision different event + // communication mechanisms, including RTEC, etc. + CIAO::CIAO_Event_Service event_service; + + // The properties of this connection, particularly useful + // to speicfy QoS properties of pub/sub service connections. + Properties config; + }; + + typedef sequence < Connection > Connections; +}; +#endif /* DEPLOYMENT_CONNECTION_IDL */ diff --git a/CIAO/ciao/Deployment_Core.idl b/CIAO/ciao/Deployment_Core.idl index 56e1c7aceea..cbdadb08c93 100644 --- a/CIAO/ciao/Deployment_Core.idl +++ b/CIAO/ciao/Deployment_Core.idl @@ -4,7 +4,9 @@ #define DEPLOYMENT_CORE_IDL #include "CCM_Component.idl" -#include <ciaosvcs/Events/CIAO_Events_Base/CIAO_Events.idl> +#include "Deployment_TargetData.idl" +#include "Deployment_Data.idl" +#include "Deployment_Application.idl" // *************** Packaging and Deployment *************** module Deployment @@ -32,75 +34,11 @@ module Deployment //Below are from the OMG Deployment.idl - exception StartError - { - string name; - string reason; - }; - exception StopError { string name; string reason; }; - exception InvalidConnection - { - string name; - string reason; - }; - - //==============property================== - struct Property - { - string name; - any value; - }; - - typedef sequence < Property > Properties; - - //============connection================== - - typedef sequence < Object > Endpoints; - //typedef Object Endpoint; - - enum CCMComponentPortKind - { - Facet, - SimplexReceptacle, - MultiplexReceptacle, - EventEmitter, - EventPublisher, - EventConsumer - }; - - // CIAO's specific <Connection> type defition. - // To avoid the connection info in the plan being passed to the - // local node and to make the implementation not very cumbersome - // I changed the connection struct to include some extra informations. - struct Connection - { - string instanceName; - string portName; - CCMComponentPortKind kind; - - string endpointInstanceName; // CIAO specific extension - string endpointPortName; // CIAO specific extension - - // the endpoints member is change to endpoint. - // Since we will not have more than 1 objref in there. - Object endpoint; - - // A wrapper facade interface to provision different event - // communication mechanisms, including RTEC, etc. - CIAO::CIAO_Event_Service event_service; - - // The properties of this connection, particularly useful - // to speicfy QoS properties of pub/sub service connections. - Properties config; - }; - - typedef sequence < Connection > Connections; - //======================================= struct ComponentImplementationInfo { @@ -131,17 +69,6 @@ module Deployment Properties nodeapp_config; }; - //================================== - interface Application - { - void finishLaunch (in Connections providedReference, - in boolean start, - in boolean is_ReDAC) - raises (StartError, InvalidConnection); - void start () - raises (StartError); - }; - struct Component_Info { string component_instance_name; diff --git a/CIAO/ciao/Deployment_Data.idl b/CIAO/ciao/Deployment_Data.idl index 7b475947add..a6ea27638ca 100644 --- a/CIAO/ciao/Deployment_Data.idl +++ b/CIAO/ciao/Deployment_Data.idl @@ -6,6 +6,16 @@ module Deployment { + enum CCMComponentPortKind + { + Facet, + SimplexReceptacle, + MultiplexReceptacle, + EventEmitter, + EventPublisher, + EventConsumer + }; + struct ComponentPortDescription { string name; string specificType; @@ -38,14 +48,6 @@ module Deployment { Properties infoProperty; }; - struct Requirement { - string resourceType; - string name; - Properties property; - }; - - typedef sequence < Requirement > Requirements; - struct MonolithicDeploymentDescription { string name; ::CORBA::StringSeq source; @@ -182,13 +184,6 @@ module Deployment { Properties infoProperty; }; - enum DomainUpdateKind { - Add, - Delete, - UpdateAll, - UpdateAvailable - }; - struct ComponentPackageReference { string requiredUUID; string requiredName; diff --git a/CIAO/ciao/Deployment_TargetData.idl b/CIAO/ciao/Deployment_TargetData.idl new file mode 100644 index 00000000000..af3a3fb5ee2 --- /dev/null +++ b/CIAO/ciao/Deployment_TargetData.idl @@ -0,0 +1,62 @@ +//$Id$ + +#ifndef DEPLOYMENT_TARGETDATA_IDL +#define DEPLOYMENT_TARGETDATA_IDL + +#include <ciao/Deployment_Base.idl> + +module Deployment { + + struct Resource { + string name; + ::CORBA::StringSeq resourceType; + SatisfierProperties property; + }; + typedef sequence < Resource > Resources; + + struct SharedResource { + string name; + ::CORBA::StringSeq resourceType; + ::CORBA::ULongSeq nodeRef; + SatisfierProperties property; + }; + typedef sequence < SharedResource > SharedResources; + + struct Node { + string name; + string label; + ::CORBA::ULongSeq sharedResourceRef; + ::CORBA::ULongSeq connectionRef; + Resources resource; + }; + typedef sequence < Node > Nodes; + + struct Interconnect { + string name; + string label; + ::CORBA::ULongSeq connectionRef; + ::CORBA::ULongSeq connectRef; + Resources resource; + }; + typedef sequence < Interconnect > Interconnects; + + struct Bridge { + string name; + string label; + ::CORBA::ULongSeq connectRef; + Resources resource; + }; + typedef sequence < Bridge > Bridges; + + struct Domain { + string UUID; + string label; + SharedResources sharedResource; + Nodes node; + Interconnects interconnect; + Bridges bridge; + Properties infoProperty; + }; +}; + +#endif /* DEPLOYMENT_TARGETDATA_IDL */ diff --git a/CIAO/ciao/DomainApplicationManager.idl b/CIAO/ciao/DomainApplicationManager.idl index c0030465638..fa21d64d39f 100644 --- a/CIAO/ciao/DomainApplicationManager.idl +++ b/CIAO/ciao/DomainApplicationManager.idl @@ -3,6 +3,7 @@ #define DOMAINAPPLICATIONMANAGER_IDL #include "Deployment.idl" +#include "Deployment_Core.idl" module Deployment { /// CIAO 's DomainApplicationManager interface differs spec-defined interface diff --git a/CIAO/ciao/Home_Servant_Impl_Base.h b/CIAO/ciao/Home_Servant_Impl_Base.h index a8752b95218..848259f72d5 100644 --- a/CIAO/ciao/Home_Servant_Impl_Base.h +++ b/CIAO/ciao/Home_Servant_Impl_Base.h @@ -19,7 +19,7 @@ #include /**/ "ace/pre.h" -#include "CCM_ComponentS.h" +#include "CCM_HomeS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once diff --git a/CIAO/ciao/NodeApplicationManager.idl b/CIAO/ciao/NodeApplicationManager.idl index 1c3e33ad05b..6a3b8e42f8a 100644 --- a/CIAO/ciao/NodeApplicationManager.idl +++ b/CIAO/ciao/NodeApplicationManager.idl @@ -2,6 +2,7 @@ #ifndef NODEAPPLICATIONMANAGER_IDL #define NODEAPPLICATIONMANAGER_IDL +#include "Deployment_Core.idl" #include "Deployment.idl" module Deployment { @@ -14,6 +15,21 @@ module Deployment { raises (StopError); }; + /** + * @struct Sched_Params + * @brief Carries Scheduling Params + * @description CIAO specific structure to carry the scheduling params + * to set the process, required by RACE + */ + struct Sched_Params + { + long policy_; + long priority_; + long scope_; + long msec_; + }; + + interface NodeApplicationManager : ApplicationManager { @@ -40,7 +56,7 @@ module Deployment { /// CIAO speicfic operation to set the information of /// "shared components" (through NodeManager) void set_shared_components (in ComponentPlans components); - + /// CIAO specific function to set priority /// o component , required by RACE long set_priority (in string cid , in Sched_Params params); diff --git a/CIAO/ciao/NodeManager.idl b/CIAO/ciao/NodeManager.idl index 47651ac52bb..318cea79aed 100644 --- a/CIAO/ciao/NodeManager.idl +++ b/CIAO/ciao/NodeManager.idl @@ -3,21 +3,36 @@ #define NODEMANAGER_IDL #include "Deployment.idl" +#include "Deployment_Core.idl" +#include "TargetManager.idl" module Deployment { + interface Logger { + }; + interface NodeApplicationManager; interface NodeManager { + /* + * @todo 06-02-01 mentions a 4th argument:in long updateInterval + */ void joinDomain (in Domain ciao_domain, in TargetManager manager, in Logger log); void leaveDomain (); + /* + * @todo According to 06-02-01 there should also be a ResourceCommitmentManager + * as second argument + */ NodeApplicationManager preparePlan (in DeploymentPlan plan) raises (StartError, PlanError); + /* + * @todo According to 06-02-01 InvalidReference shouldn't be here + */ void destroyManager (in NodeApplicationManager appManager) raises (StopError, InvalidReference); @@ -32,6 +47,11 @@ module Deployment { /// CIAO specific extension /// Get all the shared components installed in this node ComponentPlans get_shared_components (); + + /* + * @todo According to 06-02-01 missing is: + * Resources getDynamicResources (); + */ }; }; diff --git a/CIAO/ciao/Servant_Impl_Base.h b/CIAO/ciao/Servant_Impl_Base.h index a68270392b2..38d855aa5ab 100644 --- a/CIAO/ciao/Servant_Impl_Base.h +++ b/CIAO/ciao/Servant_Impl_Base.h @@ -30,8 +30,9 @@ #include "CCM_EventC.h" #include "CIAO_Server_Export.h" -#include "CCM_ComponentS.h" -#include "CCM_ContainerS.h" +#include "CCM_ContainerC.h" +#include "CCM_ObjectS.h" +#include "CCM_StandardConfiguratorC.h" #include "Home_Servant_Impl_Base.h" #include "Servant_Activator.h" @@ -137,7 +138,7 @@ namespace CIAO ACE_ENV_ARG_DECL_WITH_DEFAULTS) ACE_THROW_SPEC ((CORBA::SystemException, Components::InvalidName)); - + virtual ::Components::ReceptacleDescriptions * get_all_receptacles (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) ACE_THROW_SPEC ((CORBA::SystemException)); diff --git a/CIAO/ciao/Servant_Impl_T.cpp b/CIAO/ciao/Servant_Impl_T.cpp index b9476f72333..c1e7a6ce117 100644 --- a/CIAO/ciao/Servant_Impl_T.cpp +++ b/CIAO/ciao/Servant_Impl_T.cpp @@ -4,6 +4,7 @@ #define CIAO_SERVANT_IMPL_T_C #include "Servant_Impl_T.h" +#include "CCM_EntityContextC.h" namespace CIAO { diff --git a/CIAO/ciao/Server_init.cpp b/CIAO/ciao/Server_init.cpp index efb4e9144af..8e1428382d0 100644 --- a/CIAO/ciao/Server_init.cpp +++ b/CIAO/ciao/Server_init.cpp @@ -3,6 +3,7 @@ #include "Server_init.h" #include "CIAO_common.h" #include "CCM_ComponentC.h" +#include "CCM_StandardConfiguratorC.h" #include "Cookies.h" #include "ace/OS_NS_stdio.h" @@ -13,8 +14,6 @@ namespace CIAO { CIAO_REGISTER_VALUE_FACTORY (o, CIAO::Map_Key_Cookie_init, Components::Cookie); - CIAO_REGISTER_VALUE_FACTORY (o, CIAO::Map_Key_Cookie_init, - CIAO::Cookie); CIAO_REGISTER_VALUE_FACTORY (o, Components::PortDescription_init, Components::PortDescription); CIAO_REGISTER_VALUE_FACTORY (o, Components::FacetDescription_init, diff --git a/CIAO/ciao/StandardConfigurator_Impl.h b/CIAO/ciao/StandardConfigurator_Impl.h index a743c4d231f..558137b64d5 100644 --- a/CIAO/ciao/StandardConfigurator_Impl.h +++ b/CIAO/ciao/StandardConfigurator_Impl.h @@ -18,7 +18,7 @@ #define CIAO_STANDARDCONFIGURATOR_IMPL_H # include /**/ "ace/pre.h" -#include "CCM_ComponentS.h" +#include "CCM_StandardConfiguratorS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once diff --git a/CIAO/ciao/SwapExec.idl b/CIAO/ciao/SwapExec.idl index 1a6d00c3575..94aa99efd65 100644 --- a/CIAO/ciao/SwapExec.idl +++ b/CIAO/ciao/SwapExec.idl @@ -1,7 +1,6 @@ // $Id$ -#include "CCM_Container.idl" - +#include "CCM_EnterpriseComponent.idl" module CIAO { diff --git a/CIAO/ciao/Swapping_Servant_Home_Impl_Base.h b/CIAO/ciao/Swapping_Servant_Home_Impl_Base.h index 66258261e7d..5e118476f18 100644 --- a/CIAO/ciao/Swapping_Servant_Home_Impl_Base.h +++ b/CIAO/ciao/Swapping_Servant_Home_Impl_Base.h @@ -15,7 +15,7 @@ #include /**/ "ace/pre.h" -#include "CCM_ComponentS.h" +#include "CCM_HomeS.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once diff --git a/CIAO/ciao/TargetManager.idl b/CIAO/ciao/TargetManager.idl new file mode 100644 index 00000000000..e604a237161 --- /dev/null +++ b/CIAO/ciao/TargetManager.idl @@ -0,0 +1,36 @@ +// $Id$ + +#ifndef TARGETMANAGER_IDL +#define TARGETMANAGER_IDL + +#include "Target_Data.idl" +#include "Deployment_TargetData.idl" + +module Deployment { + + enum DomainUpdateKind { + Add, + Delete, + UpdateAll, + UpdateAvailable + }; + + /** + * @todo The ResourceCommitmentManager is part of 06-04-01 and this is not + * part of the Target Manager yet + */ + interface TargetManager { + Domain getAllResources (); + Domain getAvailableResources (); + /// @todo 06-04-01 specifies this differently + void commitResources (in DeploymentPlan plan) + raises (ResourceNotAvailable, PlanError); + /// @todo This is not part of 06-04-01 + void releaseResources (in DeploymentPlan argname); + void updateDomain (in ::CORBA::StringSeq elements, + in Domain domainSubset, + in DomainUpdateKind updateKind); + }; +}; + +#endif /* TARGETMANAGER_IDL */ diff --git a/CIAO/ciao/Target_Data.idl b/CIAO/ciao/Target_Data.idl index ba1d895c784..683f16dc2ff 100644 --- a/CIAO/ciao/Target_Data.idl +++ b/CIAO/ciao/Target_Data.idl @@ -7,6 +7,11 @@ module Deployment { + exception PlanError { + string name; + string reason; + }; + exception ResourceNotAvailable { string name; string resourceType; @@ -14,29 +19,6 @@ module Deployment { string elementName; string resourceName; }; - - exception PlanError { - string name; - string reason; - }; - - - /** - * @todo The ResourceCommitmentManager is part of 06-04-01 and this is not - * part of the Target Manager yet - */ - interface TargetManager { - Domain getAllResources (); - Domain getAvailableResources (); - /// @todo 06-04-01 specifies this differently - void commitResources (in DeploymentPlan plan) - raises (ResourceNotAvailable, PlanError); - /// @todo This is not part of 06-04-01 - void releaseResources (in DeploymentPlan argname); - void updateDomain (in ::CORBA::StringSeq elements, - in Domain domainSubset, - in DomainUpdateKind updateKind); - }; }; #endif /* TARGET_DATA_IDL */ diff --git a/CIAO/ciao/UpgradeableContext.idl b/CIAO/ciao/UpgradeableContext.idl index 0fe4a332986..343c512abe6 100644 --- a/CIAO/ciao/UpgradeableContext.idl +++ b/CIAO/ciao/UpgradeableContext.idl @@ -1,10 +1,7 @@ // $Id$ #include "CCM_Container.idl" -#include "CCM_Base.idl" -#include "CCM_Event.idl" #include "tao/PortableServer/PortableServer_include.pidl" -#include <orb.idl> module CIAO { |