summaryrefslogtreecommitdiff
path: root/modules/CIAO/ccm
diff options
context:
space:
mode:
authorWilliam R. Otte <wotte@dre.vanderbilt.edu>2009-11-10 20:33:31 +0000
committerWilliam R. Otte <wotte@dre.vanderbilt.edu>2009-11-10 20:33:31 +0000
commitf1790ce045fad390af2c69b2c25f714705c90b66 (patch)
tree45261f5f605e6cf33789427f838cc87599dbc485 /modules/CIAO/ccm
parent0e7e7420693d452ba049b31217a915c2c52da1fe (diff)
downloadATCD-f1790ce045fad390af2c69b2c25f714705c90b66.tar.gz
branching/taggingtest_branch_one
Diffstat (limited to 'modules/CIAO/ccm')
-rw-r--r--modules/CIAO/ccm/CCM.mpc182
-rw-r--r--modules/CIAO/ccm/CCM_Base.idl14
-rw-r--r--modules/CIAO/ccm/CCM_CCM2Context.idl34
-rw-r--r--modules/CIAO/ccm/CCM_CCMException.idl29
-rw-r--r--modules/CIAO/ccm/CCM_Component.idl11
-rw-r--r--modules/CIAO/ccm/CCM_ComponentId.idl34
-rw-r--r--modules/CIAO/ccm/CCM_Configurator.idl21
-rw-r--r--modules/CIAO/ccm/CCM_Container.idl12
-rw-r--r--modules/CIAO/ccm/CCM_Container_Ex.idl10
-rw-r--r--modules/CIAO/ccm/CCM_Context.idl45
-rw-r--r--modules/CIAO/ccm/CCM_Cookie.idl18
-rw-r--r--modules/CIAO/ccm/CCM_EnterpriseComponent.idl12
-rw-r--r--modules/CIAO/ccm/CCM_Entity2Context.idl35
-rw-r--r--modules/CIAO/ccm/CCM_EntityComponent.idl38
-rw-r--r--modules/CIAO/ccm/CCM_EntityContext.idl22
-rw-r--r--modules/CIAO/ccm/CCM_Enumeration.idl24
-rw-r--r--modules/CIAO/ccm/CCM_EventBase.idl13
-rw-r--r--modules/CIAO/ccm/CCM_EventConsumerBase.idl46
-rw-r--r--modules/CIAO/ccm/CCM_Events.idl85
-rw-r--r--modules/CIAO/ccm/CCM_Exceptions.idl26
-rw-r--r--modules/CIAO/ccm/CCM_ExecutorLocator.idl28
-rw-r--r--modules/CIAO/ccm/CCM_Home.idl29
-rw-r--r--modules/CIAO/ccm/CCM_HomeConfiguration.idl23
-rw-r--r--modules/CIAO/ccm/CCM_HomeExecutorBase.idl14
-rw-r--r--modules/CIAO/ccm/CCM_HomeFinder.idl29
-rw-r--r--modules/CIAO/ccm/CCM_HomeRegistration.idl21
-rw-r--r--modules/CIAO/ccm/CCM_Homes.idl19
-rw-r--r--modules/CIAO/ccm/CCM_KeylessCCMHome.idl19
-rw-r--r--modules/CIAO/ccm/CCM_Navigation.idl41
-rw-r--r--modules/CIAO/ccm/CCM_Object.idl58
-rw-r--r--modules/CIAO/ccm/CCM_PrimaryKeyBase.idl13
-rw-r--r--modules/CIAO/ccm/CCM_ProxyHomeRegistration.idl23
-rw-r--r--modules/CIAO/ccm/CCM_Receptacle.idl55
-rw-r--r--modules/CIAO/ccm/CCM_Session2Context.idl37
-rw-r--r--modules/CIAO/ccm/CCM_SessionComponent.idl34
-rw-r--r--modules/CIAO/ccm/CCM_SessionContext.idl18
-rw-r--r--modules/CIAO/ccm/CCM_SessionSynchronization.idl26
-rw-r--r--modules/CIAO/ccm/CCM_StandardConfigurator.idl28
-rw-r--r--modules/CIAO/ccm/CCM_StateIdFactory.idl59
-rw-r--r--modules/CIAO/ccm/CCM_Stub_Export.h58
-rw-r--r--modules/CIAO/ccm/CCM_Svnt_Export.h58
-rw-r--r--modules/CIAO/ccm/CCM_Transaction.idl76
-rw-r--r--modules/CIAO/ccm/ComponentServer/CCM_ComponentServer.idl62
-rw-r--r--modules/CIAO/ccm/ComponentServer/CCM_ComponentServer.mpc65
-rw-r--r--modules/CIAO/ccm/ComponentServer/CCM_ComponentServer_Base.idl56
-rw-r--r--modules/CIAO/ccm/ComponentServer/CCM_ComponentServer_Client.idl47
-rw-r--r--modules/CIAO/ccm/Components.idl17
-rw-r--r--modules/CIAO/ccm/CosPersistentState.idl21
-rw-r--r--modules/CIAO/ccm/Security.idl23
49 files changed, 1768 insertions, 0 deletions
diff --git a/modules/CIAO/ccm/CCM.mpc b/modules/CIAO/ccm/CCM.mpc
new file mode 100644
index 00000000000..99a5296f72c
--- /dev/null
+++ b/modules/CIAO/ccm/CCM.mpc
@@ -0,0 +1,182 @@
+// $Id$
+
+project(CCM_stub_idl) : ciaolib_with_idl, valuetype {
+ idlflags += -Wb,stub_export_include=CCM_Stub_Export.h
+ idlflags += -Wb,stub_export_macro=CCM_Stub_Export
+ idlflags += -Wb,skel_export_include=CCM_Svnt_Export.h
+ idlflags += -Wb,skel_export_macro=CCM_Svnt_Export
+ custom_only = 1
+ IDL_Files {
+ idlflags += -SS -Sci
+ CCM_Base.idl
+ CCM_Component.idl
+ CCM_Exceptions.idl
+ }
+
+ IDL_Files {
+ idlflags += -SS
+ CCM_Cookie.idl
+ CCM_Enumeration.idl
+ }
+
+ IDL_Files {
+ idlflags += -Ssi -Sci
+ Components.idl
+ }
+
+ IDL_Files {
+ CCM_HomeConfiguration.idl
+ CCM_StandardConfigurator.idl
+ CCM_Home.idl
+ CCM_Homes.idl
+ CCM_Object.idl
+ CCM_PrimaryKeyBase.idl
+ }
+
+ IDL_Files {
+ idlflags += -Ssi
+ CCM_HomeFinder.idl
+ CCM_Configurator.idl
+ CCM_KeylessCCMHome.idl
+ CCM_Navigation.idl
+ CCM_Receptacle.idl
+ }
+
+ IDL_Files {
+ CCM_Events.idl
+ CCM_EventBase.idl
+ CCM_EventConsumerBase.idl
+ }
+
+}
+
+project(CCM_stub) : ciaolib_with_idl, ciao_output, valuetype, ifr_client {
+ // This is necessary for MPC to pull in rules.ciao.GNU
+ includes += $(CIAO_ROOT)
+ dynamicflags = CCM_STUB_BUILD_DLL
+ after += CCM_stub_idl
+ IDL_Files {
+ }
+
+ Source_Files {
+ CCM_BaseC.cpp
+ CCM_EventsC.cpp
+ CCM_EventBaseC.cpp
+ CCM_EventConsumerBaseC.cpp
+ CCM_ComponentC.cpp
+ CCM_EnumerationC.cpp
+ CCM_HomeC.cpp
+ CCM_HomesC.cpp
+ CCM_ConfiguratorC.cpp
+ CCM_HomeConfigurationC.cpp
+ CCM_KeylessCCMHomeC.cpp
+ CCM_StandardConfiguratorC.cpp
+ CCM_HomeFinderC.cpp
+ CCM_NavigationC.cpp
+ CCM_ReceptacleC.cpp
+ CCM_CookieC.cpp
+ CCM_ObjectC.cpp
+ CCM_PrimaryKeyBaseC.cpp
+ CCM_ExceptionsC.cpp
+ ComponentsC.cpp
+ }
+}
+
+project(CCM_svnt_idl) : ciaolib_with_idl, valuetype {
+ idlflags += -Wb,export_include=CCM_Svnt_Export.h
+ idlflags += -Wb,export_macro=CCM_Svnt_Export
+ custom_only = 1
+ IDL_Files {
+ idlflags += -SS -Sci \
+ -Wb,versioning_begin=TAO_BEGIN_VERSIONED_NAMESPACE_DECL \
+ -Wb,versioning_end=TAO_END_VERSIONED_NAMESPACE_DECL
+ Security.idl
+ }
+
+ IDL_Files {
+ idlflags += -SS -Sci
+ CCM_Context.idl
+ CCM_CCMException.idl
+ CCM_EntityComponent.idl
+ CCM_EntityContext.idl
+ }
+
+ IDL_Files {
+ idlflags += -SS
+ CCM_CCM2Context.idl
+ CCM_ProxyHomeRegistration.idl
+ CCM_Session2Context.idl
+ CCM_Transaction.idl
+ CosPersistentState.idl
+ CCM_Container.idl
+ CCM_SessionContext.idl
+ CCM_SessionComponent.idl
+ CCM_Container_Ex.idl
+ CCM_StateIdFactory.idl
+ CCM_Entity2Context.idl
+ CCM_ComponentId.idl
+ CCM_ExecutorLocator.idl
+ CCM_EnterpriseComponent.idl
+ CCM_SessionSynchronization.idl
+ CCM_HomeRegistration.idl
+ CCM_HomeExecutorBase.idl
+ }
+
+}
+
+project(CCM_svnt) : orbsvcslib, orbsvcs_output \
+ , portableserver \
+ , valuetype \
+ , ifr_client \
+ , codecfactory \
+ , pi \
+ , ccm_stub \
+ , avoids_corba_e_compact \
+ , avoids_corba_e_micro \
+{
+ dynamicflags = CCM_SVNT_BUILD_DLL
+ after += CCM_svnt_idl
+ IDL_Files {
+ }
+
+ Source_Files {
+ CCM_TransactionC.cpp
+ CosPersistentStateC.cpp
+ CCM_ContainerC.cpp
+ CCM_SessionContextC.cpp
+ CCM_SessionComponentC.cpp
+ CCM_EnterpriseComponentC.cpp
+ CCM_SessionSynchronizationC.cpp
+ CCM_CCMExceptionC.cpp
+ CCM_ContextC.cpp
+ SecurityC.cpp
+ CCM_Container_ExC.cpp
+ CCM_StateIdFactoryC.cpp
+ CCM_ComponentIdC.cpp
+ CCM_Entity2ContextC.cpp
+ CCM_ExecutorLocatorC.cpp
+ CCM_ProxyHomeRegistrationC.cpp
+ CCM_Session2ContextC.cpp
+ CCM_CCM2ContextC.cpp
+ CCM_HomeRegistrationC.cpp
+ CCM_HomeExecutorBaseC.cpp
+ CCM_EntityContextC.cpp
+ CCM_EntityComponentC.cpp
+ CCM_EventsS.cpp
+ CCM_EventConsumerBaseS.cpp
+ CCM_EventBaseS.cpp
+ CCM_ConfiguratorS.cpp
+ CCM_HomeConfigurationS.cpp
+ CCM_KeylessCCMHomeS.cpp
+ CCM_StandardConfiguratorS.cpp
+ CCM_HomeS.cpp
+ CCM_HomesS.cpp
+ CCM_ObjectS.cpp
+ CCM_PrimaryKeyBaseS.cpp
+ CCM_HomeFinderS.cpp
+ CCM_NavigationS.cpp
+ CCM_ReceptacleS.cpp
+ ComponentsS.cpp
+ }
+}
+
diff --git a/modules/CIAO/ccm/CCM_Base.idl b/modules/CIAO/ccm/CCM_Base.idl
new file mode 100644
index 00000000000..d5fdac61919
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Base.idl
@@ -0,0 +1,14 @@
+// $Id$
+
+#if !defined (CCM_BASE_IDL)
+#define CCM_BASE_IDL
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ exception InvalidConnection {};
+ exception AlreadyConnected {};
+ exception NoConnection {};
+};
+#endif /* CCM_BASE_IDL */
diff --git a/modules/CIAO/ccm/CCM_CCM2Context.idl b/modules/CIAO/ccm/CCM_CCM2Context.idl
new file mode 100644
index 00000000000..eedb43ff5ca
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_CCM2Context.idl
@@ -0,0 +1,34 @@
+// $Id$
+
+#if !defined (CCM_2CONTEXT_IDL)
+#define CCM_2CONTEXT_IDL
+
+#include "ccm/CCM_Container.idl"
+#include "ccm/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/modules/CIAO/ccm/CCM_CCMException.idl b/modules/CIAO/ccm/CCM_CCMException.idl
new file mode 100644
index 00000000000..af076144304
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_CCMException.idl
@@ -0,0 +1,29 @@
+// $Id$
+
+#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,
+ QOS_ERROR,
+ REGISTRATION_ERROR,
+ SERVICE_INSTALLATION_ERROR
+ };
+
+ exception CCMException
+ {
+ CCMExceptionReason reason;
+ };
+};
+#endif /* CCM_CCMEXCEPTION_IDL */
diff --git a/modules/CIAO/ccm/CCM_Component.idl b/modules/CIAO/ccm/CCM_Component.idl
new file mode 100644
index 00000000000..a579496685f
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Component.idl
@@ -0,0 +1,11 @@
+// $Id$
+
+#if !defined (CCM_COMPONENT_IDL)
+#define CCM_COMPONENT_IDL
+
+#include "ccm/CCM_Events.idl"
+#include "ccm/CCM_Home.idl"
+#include "ccm/CCM_Object.idl"
+#include "ccm/CCM_Enumeration.idl"
+
+#endif /* CCM_COMPONENT_IDL */
diff --git a/modules/CIAO/ccm/CCM_ComponentId.idl b/modules/CIAO/ccm/CCM_ComponentId.idl
new file mode 100644
index 00000000000..c8d8deabdcb
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_ComponentId.idl
@@ -0,0 +1,34 @@
+// $Id$
+
+#if !defined (CCM_COMPONENTID_IDL)
+#define CCM_COMPONENTID_IDL
+
+#include "ccm/CCM_StateIdFactory.idl"
+
+// *************** Extended Container Interfaces ***************
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ local interface ComponentId
+ {
+ FacetId get_target_facet();
+
+ SegmentId get_target_segment();
+
+ StateIdValue get_target_state_id (in StateIdFactory sid_factory)
+ raises (InvalidStateIdData);
+
+ StateIdValue get_segment_state_id (in SegmentId seg,
+ in StateIdFactory sid_factory)
+ raises (InvalidStateIdData);
+
+ ComponentId create_with_new_target (in FacetId new_target_facet,
+ in SegmentId new_target_segment);
+
+ SegmentDescrSeq get_segment_descrs (in StateIdFactory sid_factory)
+ raises (InvalidStateIdData);
+ };
+};
+#endif /* CCM_COMPONENTID_IDL */
diff --git a/modules/CIAO/ccm/CCM_Configurator.idl b/modules/CIAO/ccm/CCM_Configurator.idl
new file mode 100644
index 00000000000..6a95548ea1e
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Configurator.idl
@@ -0,0 +1,21 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.10.1.1
+
+#if !defined (CCM_CONFIGURATOR_IDL)
+#define CCM_CONFIGURATOR_IDL
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ exception WrongComponentType {};
+
+ interface CCMObject;
+
+ interface Configurator
+ {
+ void configure (in CCMObject comp)
+ raises (WrongComponentType);
+ };
+};
+#endif /* CCM_CONFIGURATOR_IDL */
diff --git a/modules/CIAO/ccm/CCM_Container.idl b/modules/CIAO/ccm/CCM_Container.idl
new file mode 100644
index 00000000000..fdefcc1e0f9
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Container.idl
@@ -0,0 +1,12 @@
+// $Id$
+
+#if !defined (CCM_CONTAINER_IDL)
+#define CCM_CONTAINER_IDL
+
+#include "ccm/CCM_Component.idl"
+#include "ccm/CCM_CCMException.idl"
+#include "ccm/CCM_HomeExecutorBase.idl"
+#include "ccm/CCM_SessionContext.idl"
+#include "ccm/CCM_SessionComponent.idl"
+
+#endif /* CCM_CONTAINER_IDL */
diff --git a/modules/CIAO/ccm/CCM_Container_Ex.idl b/modules/CIAO/ccm/CCM_Container_Ex.idl
new file mode 100644
index 00000000000..8a64c1c5679
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Container_Ex.idl
@@ -0,0 +1,10 @@
+// $Id$
+
+#if !defined (CCM_CONTAINER_EX_IDL)
+#define CCM_CONTAINER_EX_IDL
+
+#include "ccm/CCM_Container.idl"
+#include "ccm/CCM_Session2Context.idl"
+#include "ccm/CCM_EntityContext.idl"
+
+#endif /* CCM_CONTAINER_EX_IDL */
diff --git a/modules/CIAO/ccm/CCM_Context.idl b/modules/CIAO/ccm/CCM_Context.idl
new file mode 100644
index 00000000000..499c934255e
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Context.idl
@@ -0,0 +1,45 @@
+// $Id$
+
+#if !defined (CCM_CONTEXT_IDL)
+#define CCM_CONTEXT_IDL
+
+#include "ccm/Security.idl"
+#include "ccm/CCM_Transaction.idl"
+#include "ccm/CCM_Home.idl"
+#include "ccm/CCM_CCMException.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);
+
+ /**
+ * Added for QoS4CCM
+ */
+ Object resolve_service_reference(in string service_id)
+ raises (CCMException);
+ };
+};
+#endif /* CCM_CONTEXT_IDL */
diff --git a/modules/CIAO/ccm/CCM_Cookie.idl b/modules/CIAO/ccm/CCM_Cookie.idl
new file mode 100644
index 00000000000..3e7997b482e
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Cookie.idl
@@ -0,0 +1,18 @@
+/// $Id$
+/// Compliant with OMG 06-04-01 Section 6.5.2.4
+
+#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/modules/CIAO/ccm/CCM_EnterpriseComponent.idl b/modules/CIAO/ccm/CCM_EnterpriseComponent.idl
new file mode 100644
index 00000000000..b2470468da0
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_EnterpriseComponent.idl
@@ -0,0 +1,12 @@
+// $Id$
+
+#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/modules/CIAO/ccm/CCM_Entity2Context.idl b/modules/CIAO/ccm/CCM_Entity2Context.idl
new file mode 100644
index 00000000000..d21772bfb6b
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Entity2Context.idl
@@ -0,0 +1,35 @@
+// $Id$
+
+#if !defined (CCM_ENTITY2CONTEXT_IDL)
+#define CCM_ENTITY2CONTEXT_IDL
+
+#include "ccm/CCM_Session2Context.idl"
+#include "ccm/CCM_EntityContext.idl"
+#include "ccm/CCM_ComponentId.idl"
+
+// *************** Extended Container Interfaces ***************
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ local interface Entity2Context : EntityContext, CCM2Context
+ {
+ ComponentId get_component_id ()
+ raises (IllegalState);
+
+ ComponentId create_component_id (in FacetId target_facet,
+ in SegmentId target_segment,
+ in SegmentDescrSeq seq_descrs);
+
+ ComponentId create_monolithic_component_id (in FacetId target_facet,
+ in StateIdValue sid);
+
+ Object create_ref_from_cid (in CORBA::RepositoryId repid,
+ in ComponentId cid);
+
+ ComponentId get_cid_from_ref (in Object objref)
+ raises (BadComponentReference);
+ };
+};
+#endif /* CCM_ENTITY2CONTEXT_IDL */
diff --git a/modules/CIAO/ccm/CCM_EntityComponent.idl b/modules/CIAO/ccm/CCM_EntityComponent.idl
new file mode 100644
index 00000000000..4fb219a7904
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_EntityComponent.idl
@@ -0,0 +1,38 @@
+// $Id$
+
+#if !defined (CCM_ENTITYCOMPONENT_IDL)
+#define CCM_ENTITYCOMPONENT_IDL
+
+#include "ccm/CCM_CCMException.idl"
+#include "ccm/CCM_EnterpriseComponent.idl"
+#include "ccm/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/modules/CIAO/ccm/CCM_EntityContext.idl b/modules/CIAO/ccm/CCM_EntityContext.idl
new file mode 100644
index 00000000000..3375c44717d
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_EntityContext.idl
@@ -0,0 +1,22 @@
+// $Id$
+
+#if !defined (CCM_ENTITYCONTEXT_IDL)
+#define CCM_ENTITYCONTEXT_IDL
+
+#include "ccm/CCM_Context.idl"
+#include "ccm/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/modules/CIAO/ccm/CCM_Enumeration.idl b/modules/CIAO/ccm/CCM_Enumeration.idl
new file mode 100644
index 00000000000..406df4dfeca
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Enumeration.idl
@@ -0,0 +1,24 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 10.3.1.2
+
+#if !defined (CCM_ENUMERATION_IDL)
+#define CCM_ENUMERATION_IDL
+
+#include "ccm/CCM_Object.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ abstract valuetype Enumeration
+ {
+ boolean has_more_elements();
+ CCMObject next_element();
+ };
+
+ valuetype DefaultEnumeration : Enumeration
+ {
+ private CCMObjectSeq objects;
+ };
+};
+#endif /* CCM_ENUMERATION_IDL */
diff --git a/modules/CIAO/ccm/CCM_EventBase.idl b/modules/CIAO/ccm/CCM_EventBase.idl
new file mode 100644
index 00000000000..d72bb003456
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_EventBase.idl
@@ -0,0 +1,13 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.6.1.2
+
+#if !defined (CCM_EVENTBASE_IDL)
+#define CCM_EVENTBASE_IDL
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ abstract valuetype EventBase {};
+};
+#endif /* CCM_EVENTBASE_IDL */
diff --git a/modules/CIAO/ccm/CCM_EventConsumerBase.idl b/modules/CIAO/ccm/CCM_EventConsumerBase.idl
new file mode 100644
index 00000000000..86f4261b8f2
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_EventConsumerBase.idl
@@ -0,0 +1,46 @@
+// $Id$
+/// NOT Compliant with OMG 06-04-01 Section 6.6.2
+
+#if !defined (CCM_EVENTCONSUMERBASE_IDL)
+#define CCM_EVENTCONSUMERBASE_IDL
+
+#include "ccm/CCM_EventBase.idl"
+#include "tao/Typecode_types.pidl"
+#include "tao/orb_types.pidl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ exception BadEventType
+ {
+ CORBA::RepositoryId expected_event_type;
+ };
+
+ interface EventConsumerBase
+ {
+ void push_event (in EventBase evt) raises (BadEventType);
+
+ /*
+ * CIAO-specific operation to treat event service as regular event
+ * sink port. The source_id needs to be passed in to identify the
+ * source of the publisher port to support event filtering mechanism.
+ *
+ * @todo Has to be removed
+ */
+ void ciao_push_event (in EventBase evt,
+ in string source_id,
+ in CORBA::TypeCode tc)
+ raises (BadEventType);
+
+ /*
+ * CIAO-specific operation to help support the capability
+ * to subscribe to eventtypes more derived than the type
+ * consumed.
+ *
+ * @todo Has to be removed
+ */
+ boolean ciao_is_substitutable (in string event_repo_id);
+ };
+};
+#endif /* CCM_EVENTCONSUMERBASE_IDL */
diff --git a/modules/CIAO/ccm/CCM_Events.idl b/modules/CIAO/ccm/CCM_Events.idl
new file mode 100644
index 00000000000..96647942518
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Events.idl
@@ -0,0 +1,85 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.6.8
+
+#if !defined (CCM_EVENTS_IDL)
+#define CCM_EVENTS_IDL
+
+#include "ccm/CCM_Base.idl"
+#include "ccm/CCM_Navigation.idl"
+#include "ccm/CCM_Receptacle.idl"
+#include "ccm/CCM_Cookie.idl"
+#include "ccm/CCM_EventBase.idl"
+#include "ccm/CCM_EventConsumerBase.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ valuetype ConsumerDescription : PortDescription
+ {
+ public EventConsumerBase consumer;
+ };
+ typedef sequence<ConsumerDescription> ConsumerDescriptions;
+
+ valuetype EmitterDescription : PortDescription
+ {
+ public EventConsumerBase consumer;
+ };
+ typedef sequence<EmitterDescription> EmitterDescriptions;
+
+ valuetype SubscriberDescription
+ {
+ public Cookie ck;
+ public EventConsumerBase consumer;
+ };
+ typedef sequence<SubscriberDescription> SubscriberDescriptions;
+
+ valuetype PublisherDescription : PortDescription
+ {
+ public SubscriberDescriptions consumers;
+ };
+ typedef sequence<PublisherDescription> PublisherDescriptions;
+
+ interface Events
+ {
+ EventConsumerBase get_consumer (in FeatureName sink_name)
+ raises (InvalidName);
+
+ Cookie subscribe (in FeatureName publisher_name,
+ in EventConsumerBase subscriber)
+ raises (InvalidName,
+ InvalidConnection,
+ ExceededConnectionLimit);
+
+ EventConsumerBase unsubscribe (in FeatureName publisher_name,
+ in Cookie ck)
+ raises (InvalidName,
+ InvalidConnection);
+
+ void connect_consumer (in FeatureName emitter_name,
+ in EventConsumerBase consumer)
+ raises (InvalidName,
+ AlreadyConnected,
+ InvalidConnection);
+
+ EventConsumerBase disconnect_consumer (in FeatureName source_name)
+ raises (InvalidName,
+ NoConnection);
+
+ ConsumerDescriptions get_all_consumers ();
+
+ ConsumerDescriptions get_named_consumers (in NameList names)
+ raises (InvalidName);
+
+ EmitterDescriptions get_all_emitters ();
+
+ EmitterDescriptions get_named_emitters (in NameList names)
+ raises (InvalidName);
+
+ PublisherDescriptions get_all_publishers ();
+
+ PublisherDescriptions get_named_publishers (in NameList names)
+ raises (InvalidName);
+ };
+};
+#endif /* CCM_EVENTS_IDL */
diff --git a/modules/CIAO/ccm/CCM_Exceptions.idl b/modules/CIAO/ccm/CCM_Exceptions.idl
new file mode 100644
index 00000000000..7e1f7067f2b
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Exceptions.idl
@@ -0,0 +1,26 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.7.6
+
+#if !defined (CCM_EXCEPTIONS_IDL)
+#define CCM_EXCEPTIONS_IDL
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ typedef unsigned long FailureReason;
+
+ exception CreateFailure {
+ FailureReason reason;
+ };
+ exception FinderFailure
+ {
+ FailureReason reason;
+ };
+ exception RemoveFailure
+ {
+ FailureReason reason;
+ };
+};
+
+#endif
diff --git a/modules/CIAO/ccm/CCM_ExecutorLocator.idl b/modules/CIAO/ccm/CCM_ExecutorLocator.idl
new file mode 100644
index 00000000000..ef0ac8386d8
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_ExecutorLocator.idl
@@ -0,0 +1,28 @@
+// $Id$
+
+#if !defined (CCM_EXECUTORLOCATOR_IDL)
+#define CCM_EXECUTORLOCATOR_IDL
+
+#include "ccm/CCM_EnterpriseComponent.idl"
+#include "ccm/CCM_CCMException.idl"
+#include "ccm/CCM_Object.idl"
+
+// *************** Extended Container Interfaces ***************
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ local interface ExecutorLocator : EnterpriseComponent
+ {
+ Object obtain_executor (in string name)
+ raises (CCMException);
+
+ void release_executor (in Object exc)
+ raises (CCMException);
+
+ void configuration_complete()
+ raises (InvalidConfiguration);
+ };
+};
+#endif /* CCM_EXECUTORLOCATOR_IDL */
diff --git a/modules/CIAO/ccm/CCM_Home.idl b/modules/CIAO/ccm/CCM_Home.idl
new file mode 100644
index 00000000000..697fccf72c4
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Home.idl
@@ -0,0 +1,29 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.7.6
+
+#if !defined (CCM_HOME_IDL)
+#define CCM_HOME_IDL
+
+#include "tao/IFR_Client/IFR_Base.pidl"
+#include "ccm/CCM_Exceptions.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ 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_HOME_IDL */
diff --git a/modules/CIAO/ccm/CCM_HomeConfiguration.idl b/modules/CIAO/ccm/CCM_HomeConfiguration.idl
new file mode 100644
index 00000000000..b3b0787ec28
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_HomeConfiguration.idl
@@ -0,0 +1,23 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.10.2.1
+
+#if !defined (CCM_HOMECONFIGURATION_IDL)
+#define CCM_HOMECONFIGURATION_IDL
+
+#include "ccm/CCM_Configurator.idl"
+#include "ccm/CCM_StandardConfigurator.idl"
+#include "ccm/CCM_Home.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/modules/CIAO/ccm/CCM_HomeExecutorBase.idl b/modules/CIAO/ccm/CCM_HomeExecutorBase.idl
new file mode 100644
index 00000000000..34a92fbe539
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_HomeExecutorBase.idl
@@ -0,0 +1,14 @@
+// $Id$
+
+#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/modules/CIAO/ccm/CCM_HomeFinder.idl b/modules/CIAO/ccm/CCM_HomeFinder.idl
new file mode 100644
index 00000000000..50c41811acb
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_HomeFinder.idl
@@ -0,0 +1,29 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.8
+
+#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/modules/CIAO/ccm/CCM_HomeRegistration.idl b/modules/CIAO/ccm/CCM_HomeRegistration.idl
new file mode 100644
index 00000000000..c6f69ed6c43
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_HomeRegistration.idl
@@ -0,0 +1,21 @@
+// $Id$
+
+#if !defined (CCM_HOMEREGISTRATION_IDL)
+#define CCM_HOMEREGISTRATION_IDL
+
+#include "ccm/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/modules/CIAO/ccm/CCM_Homes.idl b/modules/CIAO/ccm/CCM_Homes.idl
new file mode 100644
index 00000000000..edeb6ddb11f
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Homes.idl
@@ -0,0 +1,19 @@
+// $Id$
+/// NOT Compliant with OMG 06-04-01 Section 6.7.6
+
+#if !defined (CCM_HOMES_IDL)
+#define CCM_HOMES_IDL
+
+#include "ccm/CCM_Home.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ /**
+ * @@ Added by wotte for continued compatibility with OFCCM
+ */
+ typedef sequence<CCMHome> CCMHomes;
+};
+
+#endif /* CCM_HOMES_IDL */
diff --git a/modules/CIAO/ccm/CCM_KeylessCCMHome.idl b/modules/CIAO/ccm/CCM_KeylessCCMHome.idl
new file mode 100644
index 00000000000..8a720cf64f4
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_KeylessCCMHome.idl
@@ -0,0 +1,19 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.7.7
+
+#if !defined (CCM_KEYLESSCCMHOME_IDL)
+#define CCM_KEYLESSCCMHOME_IDL
+
+#include "ccm/CCM_Object.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ interface KeylessCCMHome
+ {
+ CCMObject create_component()
+ raises (CreateFailure);
+ };
+};
+#endif /* CCM_KEYLESSCCMHOME_IDL */
diff --git a/modules/CIAO/ccm/CCM_Navigation.idl b/modules/CIAO/ccm/CCM_Navigation.idl
new file mode 100644
index 00000000000..90e9abe8b71
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Navigation.idl
@@ -0,0 +1,41 @@
+/// $Id$
+/// Compliant with OMG 06-04-01 Section 6.4.3.3
+
+#if !defined (CCM_NAVIGATION_IDL)
+#define CCM_NAVIGATION_IDL
+
+#include "tao/orb_types.pidl"
+#include "tao/StringSeq.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/modules/CIAO/ccm/CCM_Object.idl b/modules/CIAO/ccm/CCM_Object.idl
new file mode 100644
index 00000000000..5f44d1b0568
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Object.idl
@@ -0,0 +1,58 @@
+// $Id$
+/// NOT Compliant with OMG 06-04-01 Section 6.11.1
+
+#if !defined (CCM_OBJECT_IDL)
+#define CCM_OBJECT_IDL
+
+#include "ccm/CCM_Events.idl"
+#include "ccm/CCM_Navigation.idl"
+#include "ccm/CCM_Home.idl"
+#include "ccm/CCM_PrimaryKeyBase.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ /// This typedef and consts shouldn't be here but are here because of CIAO
+ /// specific additions
+ typedef FailureReason InvalidConfigurationReason;
+ const InvalidConfigurationReason UnknownConfigValueName = 0;
+ const InvalidConfigurationReason InvalidConfigValueType = 1;
+ const InvalidConfigurationReason ConfigValueRequired = 2;
+ const InvalidConfigurationReason ConfigValueNotExpected = 3;
+
+ /// Shouldn't be here but is now here because of CIAO additions
+ exception InvalidConfiguration
+ {
+ InvalidConfigurationReason reason;
+ FeatureName name;
+ };
+
+ valuetype ComponentPortDescription
+ {
+ public FacetDescriptions facets;
+ public ReceptacleDescriptions receptacles;
+ public ConsumerDescriptions consumers;
+ public EmitterDescriptions emitters;
+ public PublisherDescriptions publishers;
+ };
+
+ exception NoKeyAvailable {};
+
+ interface CCMObject : Navigation, Receptacles, Events
+ {
+ CORBA::IRObject get_component_def ( );
+ CCMHome get_ccm_home( );
+ PrimaryKeyBase get_primary_key( )
+ raises (NoKeyAvailable);
+ void configuration_complete ()
+ raises (InvalidConfiguration);
+ void remove()
+ raises (RemoveFailure);
+ ComponentPortDescription get_all_ports ();
+ };
+
+ // From OMG 06-04-01 Section 10.3.1.2
+ typedef sequence<CCMObject> CCMObjectSeq;
+};
+#endif /* CCM_OBJECT_IDL */
diff --git a/modules/CIAO/ccm/CCM_PrimaryKeyBase.idl b/modules/CIAO/ccm/CCM_PrimaryKeyBase.idl
new file mode 100644
index 00000000000..27c261d20b2
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_PrimaryKeyBase.idl
@@ -0,0 +1,13 @@
+// $Id$
+
+#if !defined (CCM_PRIMARYKEYBASE_IDL)
+#define CCM_PRIMARYKEYBASE_IDL
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ abstract valuetype PrimaryKeyBase {};
+
+};
+#endif /* CCM_PRIMARYKEYBASE_IDL */
diff --git a/modules/CIAO/ccm/CCM_ProxyHomeRegistration.idl b/modules/CIAO/ccm/CCM_ProxyHomeRegistration.idl
new file mode 100644
index 00000000000..3f613d7c13f
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_ProxyHomeRegistration.idl
@@ -0,0 +1,23 @@
+// $Id$
+
+#if !defined (CCM_PROXYHOMEREGISTRATION_IDL)
+#define CCM_PROXYHOMEREGISTRATION_IDL
+
+#include "ccm/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/modules/CIAO/ccm/CCM_Receptacle.idl b/modules/CIAO/ccm/CCM_Receptacle.idl
new file mode 100644
index 00000000000..4d3af287c5c
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Receptacle.idl
@@ -0,0 +1,55 @@
+/// $Id$
+/// Compliant with OMG 06-04-01 Section 6.5.3
+
+#if !defined (CCM_RECEPTACLE_IDL)
+#define CCM_RECEPTACLE_IDL
+
+#include "ccm/CCM_Base.idl"
+#include "ccm/CCM_Navigation.idl"
+#include "ccm/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/modules/CIAO/ccm/CCM_Session2Context.idl b/modules/CIAO/ccm/CCM_Session2Context.idl
new file mode 100644
index 00000000000..e1f2d8f1614
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Session2Context.idl
@@ -0,0 +1,37 @@
+// $Id$
+
+#if !defined (CCM_SESSION2CONTEXT_IDL)
+#define CCM_SESSION2CONTEXT_IDL
+
+#include "ccm/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/modules/CIAO/ccm/CCM_SessionComponent.idl b/modules/CIAO/ccm/CCM_SessionComponent.idl
new file mode 100644
index 00000000000..f7de21e3f04
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_SessionComponent.idl
@@ -0,0 +1,34 @@
+// $Id$
+
+#if !defined (CCM_SESSIONCOMPONENT_IDL)
+#define CCM_SESSIONCOMPONENT_IDL
+
+#include "ccm/CCM_SessionContext.idl"
+#include "ccm/CCM_CCMException.idl"
+#include "ccm/CCM_EnterpriseComponent.idl"
+
+// *************** Basic Container interfaces ***************
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ local interface SessionComponent : EnterpriseComponent
+ {
+ void set_session_context ( in SessionContext ctx)
+ raises (CCMException);
+
+ void configuration_complete ()
+ raises (CCMException);
+
+ void ccm_activate()
+ raises (CCMException);
+
+ void ccm_passivate()
+ raises (CCMException);
+
+ void ccm_remove ()
+ raises (CCMException);
+ };
+};
+#endif /* CCM_SESSIONCOMPONENT_IDL */
diff --git a/modules/CIAO/ccm/CCM_SessionContext.idl b/modules/CIAO/ccm/CCM_SessionContext.idl
new file mode 100644
index 00000000000..88685acd965
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_SessionContext.idl
@@ -0,0 +1,18 @@
+// $Id$
+
+#if !defined (CCM_SESSIONCONTEXT_IDL)
+#define CCM_SESSIONCONTEXT_IDL
+
+#include "ccm/CCM_Context.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ local interface SessionContext : CCMContext
+ {
+ Object get_CCM_object()
+ raises (IllegalState);
+ };
+};
+#endif /* CCM_SESSIONCONTEXT_IDL */
diff --git a/modules/CIAO/ccm/CCM_SessionSynchronization.idl b/modules/CIAO/ccm/CCM_SessionSynchronization.idl
new file mode 100644
index 00000000000..988cd4fdfb1
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_SessionSynchronization.idl
@@ -0,0 +1,26 @@
+// $Id$
+
+#if !defined (CCM_SESSIONSYNCHRONIZATION_IDL)
+#define CCM_SESSIONSYNCHRONIZATION_IDL
+
+#include "ccm/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/modules/CIAO/ccm/CCM_StandardConfigurator.idl b/modules/CIAO/ccm/CCM_StandardConfigurator.idl
new file mode 100644
index 00000000000..0013d3d5b31
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_StandardConfigurator.idl
@@ -0,0 +1,28 @@
+// $Id$
+/// Compliant with OMG 06-04-01 Section 6.10.1.2
+
+#if !defined (CCM_STANDARDCONFIGURATOR_IDL)
+#define CCM_STANDARDCONFIGURATOR_IDL
+
+#include "ccm/CCM_Configurator.idl"
+#include "ccm/CCM_Navigation.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/modules/CIAO/ccm/CCM_StateIdFactory.idl b/modules/CIAO/ccm/CCM_StateIdFactory.idl
new file mode 100644
index 00000000000..f26371ecd54
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_StateIdFactory.idl
@@ -0,0 +1,59 @@
+// $Id$
+
+#if !defined (CCM_STATEIDFACTORY)
+#define CCM_STATEIDFACTORY
+
+#include <CosPersistentState.idl>
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ typedef short SegmentId;
+ const SegmentId COMPONENT_SEGMENT = 0;
+
+ typedef short FacetId;
+ const FacetId COMPONENT_FACET = 0;
+
+ typedef sequence<octet> IdData;
+ typedef CosPersistentState::Pid PersistentId;
+
+ exception InvalidStateIdData {};
+
+ typedef short StateIdType;
+ const StateIdType PERSISTENT_ID = 0;
+
+ abstract valuetype StateIdValue
+ {
+ StateIdType get_sid_type();
+ IdData get_sid_data();
+ };
+
+ local interface StateIdFactory
+ {
+ StateIdValue create (in IdData data)
+ raises (InvalidStateIdData);
+ };
+
+ valuetype PersistentIdValue : StateIdValue
+ {
+ private PersistentId pid;
+ PersistentId get_pid();
+ factory init (in PersistentId pid);
+ };
+
+ valuetype SegmentDescr
+ {
+ private StateIdValue sid;
+ private SegmentId seg;
+
+ StateIdValue get_sid();
+ SegmentId get_seg_id();
+ factory init (in StateIdValue sid,
+ in SegmentId seg);
+ };
+
+ typedef sequence<SegmentDescr> SegmentDescrSeq;
+
+};
+#endif /* CCM_STATEIDFACTORY */
diff --git a/modules/CIAO/ccm/CCM_Stub_Export.h b/modules/CIAO/ccm/CCM_Stub_Export.h
new file mode 100644
index 00000000000..dad69c9cc0e
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Stub_Export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl CCM_Stub
+// ------------------------------
+#ifndef CCM_STUB_EXPORT_H
+#define CCM_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (CCM_STUB_HAS_DLL)
+# define CCM_STUB_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && CCM_STUB_HAS_DLL */
+
+#if !defined (CCM_STUB_HAS_DLL)
+# define CCM_STUB_HAS_DLL 1
+#endif /* ! CCM_STUB_HAS_DLL */
+
+#if defined (CCM_STUB_HAS_DLL) && (CCM_STUB_HAS_DLL == 1)
+# if defined (CCM_STUB_BUILD_DLL)
+# define CCM_Stub_Export ACE_Proper_Export_Flag
+# define CCM_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define CCM_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* CCM_STUB_BUILD_DLL */
+# define CCM_Stub_Export ACE_Proper_Import_Flag
+# define CCM_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define CCM_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* CCM_STUB_BUILD_DLL */
+#else /* CCM_STUB_HAS_DLL == 1 */
+# define CCM_Stub_Export
+# define CCM_STUB_SINGLETON_DECLARATION(T)
+# define CCM_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* CCM_STUB_HAS_DLL == 1 */
+
+// Set CCM_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (CCM_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define CCM_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define CCM_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !CCM_STUB_NTRACE */
+
+#if (CCM_STUB_NTRACE == 1)
+# define CCM_STUB_TRACE(X)
+#else /* (CCM_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define CCM_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (CCM_STUB_NTRACE == 1) */
+
+#endif /* CCM_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/ccm/CCM_Svnt_Export.h b/modules/CIAO/ccm/CCM_Svnt_Export.h
new file mode 100644
index 00000000000..edb1b38f5ba
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Svnt_Export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl CCM_Svnt
+// ------------------------------
+#ifndef CCM_SVNT_EXPORT_H
+#define CCM_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (CCM_SVNT_HAS_DLL)
+# define CCM_SVNT_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && CCM_SVNT_HAS_DLL */
+
+#if !defined (CCM_SVNT_HAS_DLL)
+# define CCM_SVNT_HAS_DLL 1
+#endif /* ! CCM_SVNT_HAS_DLL */
+
+#if defined (CCM_SVNT_HAS_DLL) && (CCM_SVNT_HAS_DLL == 1)
+# if defined (CCM_SVNT_BUILD_DLL)
+# define CCM_Svnt_Export ACE_Proper_Export_Flag
+# define CCM_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define CCM_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* CCM_SVNT_BUILD_DLL */
+# define CCM_Svnt_Export ACE_Proper_Import_Flag
+# define CCM_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define CCM_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* CCM_SVNT_BUILD_DLL */
+#else /* CCM_SVNT_HAS_DLL == 1 */
+# define CCM_Svnt_Export
+# define CCM_SVNT_SINGLETON_DECLARATION(T)
+# define CCM_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* CCM_SVNT_HAS_DLL == 1 */
+
+// Set CCM_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (CCM_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define CCM_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define CCM_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !CCM_SVNT_NTRACE */
+
+#if (CCM_SVNT_NTRACE == 1)
+# define CCM_SVNT_TRACE(X)
+#else /* (CCM_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define CCM_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (CCM_SVNT_NTRACE == 1) */
+
+#endif /* CCM_SVNT_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/ccm/CCM_Transaction.idl b/modules/CIAO/ccm/CCM_Transaction.idl
new file mode 100644
index 00000000000..5760d39846d
--- /dev/null
+++ b/modules/CIAO/ccm/CCM_Transaction.idl
@@ -0,0 +1,76 @@
+// $Id$
+
+#if !defined (CCM_TRANSACTION_IDL)
+#define CCM_TRANSACTION_IDL
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ // @@ Components::Transaction is still there.
+ module Transaction
+ {
+
+ typedef sequence<octet> TranToken;
+
+ exception NoTransaction {};
+ exception NotSupported {};
+ exception SystemError {};
+ exception RollbackError {};
+ exception HeuristicMixed {};
+ exception HeuristicRollback {};
+ exception Security {};
+ exception InvalidToken {};
+
+ enum Status
+ {
+ ACTIVE,
+ MARKED_ROLLBACK,
+ PREPARED,
+ COMMITTED,
+ ROLLED_BACK,
+ NO_TRANSACTION,
+ PREPARING,
+ COMMITTING,
+ ROLLING_BACK
+ };
+
+ local interface UserTransaction {
+ void begin ()
+ raises (NotSupported,
+ SystemError);
+
+ void commit ()
+ raises (RollbackError,
+ NoTransaction,
+ HeuristicMixed,
+ HeuristicRollback,
+ Security,
+ SystemError);
+
+ void rollback ()
+ raises (NoTransaction,
+ Security,
+ SystemError);
+
+ void set_rollback_only ()
+ raises (NoTransaction,
+ SystemError);
+
+ Status get_status()
+ raises (SystemError);
+
+ void set_timeout (in long to)
+ raises (SystemError);
+
+ TranToken suspend ()
+ raises (NoTransaction,
+ SystemError);
+
+ void resume (in TranToken txtoken)
+ raises (InvalidToken,
+ SystemError);
+ };
+ };
+};
+#endif /* CCM_TRANSACTION_IDL */
diff --git a/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer.idl b/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer.idl
new file mode 100644
index 00000000000..dd06fb7c1cb
--- /dev/null
+++ b/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer.idl
@@ -0,0 +1,62 @@
+// $Id$
+
+#if !defined (COMPONENTSERVER_IDL)
+#define COMPONENTSERVER_IDL
+
+#include "ccm/ComponentServer/CCM_ComponentServer_Base.idl"
+#include "ccm/CCM_Homes.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ module Deployment
+ {
+ interface Container;
+ typedef sequence<Container> Containers;
+ interface ServerActivator;
+
+ interface ComponentServer
+ {
+ readonly attribute ConfigValues configuration;
+
+ ServerActivator get_server_activator();
+
+ Container create_container(in ConfigValues config)
+ raises (::Components::CreateFailure,
+ ::Components::Deployment::InvalidConfiguration);
+
+ void remove_container(in Container cref) raises (::Components::RemoveFailure);
+
+ Containers get_containers();
+
+ void remove() raises (::Components::RemoveFailure);
+ };
+
+ typedef sequence<ComponentServer> ComponentServers;
+
+ interface Container
+ {
+ readonly attribute ConfigValues configuration;
+
+ ComponentServer get_component_server();
+
+ CCMHome install_home(in UUID id,
+ in string entrypt,
+ in ConfigValues config)
+ raises (::Components::Deployment::UnknownImplId,
+ ::Components::Deployment::ImplEntryPointNotFound,
+ ::Components::Deployment::InstallationFailure,
+ ::Components::Deployment::InvalidConfiguration);
+
+ void remove_home(in CCMHome href) raises (::Components::RemoveFailure);
+
+ CCMHomes get_homes();
+
+ void remove() raises (::Components::RemoveFailure);
+ };
+ };
+
+};
+
+#endif /* COMPONENTSERVER_IDL */
diff --git a/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer.mpc b/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer.mpc
new file mode 100644
index 00000000000..a8d6e640caa
--- /dev/null
+++ b/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer.mpc
@@ -0,0 +1,65 @@
+// -*- MPC -*-
+// $Id$
+
+project(CCM_ComponentServer_IDL) : ciaoidldefaults, anytypecode {
+ idlflags += -Wb,stub_export_macro=DANCE_COMPONENTSERVER_STUB_Export \
+ -Wb,stub_export_include=DAnCE_ComponentServer_stub_export.h \
+ -Wb,skel_export_macro=DANCE_COMPONENTSERVER_SVNT_Export \
+ -Wb,skel_export_include=DAnCE_ComponentServer_svnt_export.h
+
+ custom_only = 1
+
+ IDL_Files {
+ idlflags += -SS -Sci -Gxhst -Gxhsk
+ CCM_ComponentServer_Base.idl
+ }
+
+ IDL_Files {
+ idlflags += -Ssi
+ CCM_ComponentServer_Client.idl
+ }
+
+ IDL_Files {
+ idlflags += -Ssi
+ CCM_ComponentServer.idl
+ }
+}
+
+project(CCM_ComponentServer_stub) : ciaolib_with_idl, ciao_output, messaging, ccm_stub, anytypecode, ciao_lib {
+ dynamicflags = DANCE_COMPONENTSERVER_STUB_BUILD_DLL
+ after += CCM_ComponentServer_IDL
+
+ Header_Files {
+ DAnCE_ComponentServer_stub_export.h
+ CCM_ComponentServerC.h
+ CCM_ComponentServer_ClientC.h
+ CCM_ComponentServer_BaseC.h
+ }
+
+ Source_Files {
+ CCM_ComponentServerC.cpp
+ CCM_ComponentServer_ClientC.cpp
+ CCM_ComponentServer_BaseC.cpp
+ }
+ IDL_Files {
+ }
+}
+
+project(CCM_ComponentServer_svnt) : ciaolib_with_idl, ciao_output, messaging, ccm_componentserver_stub, anytypecode, ciao_lib {
+ dynamicflags = DANCE_COMPONENTSERVER_SVNT_BUILD_DLL
+
+ Header_Files {
+ DAnCE_ComponentServer_svnt_export.h
+ CCM_ComponentServerS.h
+ CCM_ComponentServer_ClientS.h
+ CCM_ComponentServer_BaseS.h
+ }
+
+ Source_Files {
+ CCM_ComponentServerS.cpp
+ CCM_ComponentServer_ClientS.cpp
+ }
+ IDL_Files {
+ }
+}
+
diff --git a/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer_Base.idl b/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer_Base.idl
new file mode 100644
index 00000000000..c44ce1b8796
--- /dev/null
+++ b/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer_Base.idl
@@ -0,0 +1,56 @@
+/**
+ * @file CCM_ComponentServer_Base.idl
+ * $Id$
+ * Contains base types for all componenent server interfaces.
+ * These interfaces are not part of the CCM standard.
+ */
+
+#ifndef COMPONENTSERVER_BASE_IDL_
+#define COMPONENTSERVER_BASE_IDL_
+
+#include "ccm/CCM_Home.idl"
+#include "ccm/CCM_KeylessCCMHome.idl"
+#include "ccm/CCM_Navigation.idl"
+#include "ccm/CCM_StandardConfigurator.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ module Deployment
+ {
+ typedef string UUID;
+ typedef string Location;
+
+ 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 UnknownImplId
+ {
+ };
+
+ exception InvalidLocation
+ {
+ };
+
+ exception ImplEntryPointNotFound
+ {
+ };
+
+ exception InstallationFailure
+ {
+ FailureReason reason;
+ };
+ };
+};
+
+#endif
diff --git a/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer_Client.idl b/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer_Client.idl
new file mode 100644
index 00000000000..8d5b0b02abd
--- /dev/null
+++ b/modules/CIAO/ccm/ComponentServer/CCM_ComponentServer_Client.idl
@@ -0,0 +1,47 @@
+/**
+ * @file CCM_ComponentServer_Client.idl
+ * Client side objects hosted by the NodeApplication.
+ * $Id$
+ */
+
+#ifndef COMPONENTSERVER_CLIENT_IDL_
+#define COMPONENTSERVER_CLIENT_IDL_
+
+#include "ccm/ComponentServer/CCM_ComponentServer.idl"
+
+module Components
+{
+ typeprefix Components "omg.org";
+
+ module Deployment
+ {
+ interface ComponentInstallation
+ {
+ void install(in UUID implUUID, in Location component_loc)
+ raises (InvalidLocation, InstallationFailure);
+
+ void replace(in UUID implUUID, in Location component_loc)
+ raises (InvalidLocation, InstallationFailure);
+
+ void remove(in UUID implUUID)
+ raises (UnknownImplId, RemoveFailure);
+
+ Location get_implementation(in UUID implUUID)
+ raises(UnknownImplId, InstallationFailure);
+ };
+
+ interface ServerActivator
+ {
+ ComponentServer create_component_server(in ConfigValues config)
+ raises(::Components::CreateFailure,
+ ::Components::Deployment::InvalidConfiguration);
+
+ void remove_component_server(in ComponentServer server)
+ raises(::Components::RemoveFailure);
+
+ ComponentServers get_component_servers();
+ };
+ };
+};
+
+#endif
diff --git a/modules/CIAO/ccm/Components.idl b/modules/CIAO/ccm/Components.idl
new file mode 100644
index 00000000000..cda791f25fa
--- /dev/null
+++ b/modules/CIAO/ccm/Components.idl
@@ -0,0 +1,17 @@
+// $Id$
+
+/**
+ * This file is included in the generated executor
+ * mapping IDL file,
+ */
+
+#if !defined (CCM_COMPONENTS_IDL)
+#define CCM_COMPONENTS_IDL
+
+#include "ccm/CCM_Component.idl"
+#include "ccm/CCM_KeylessCCMHome.idl"
+#include "ccm/CCM_Home.idl"
+#include "ccm/CCM_Object.idl"
+
+#endif /* CCM_COMPONENTS_IDL */
+
diff --git a/modules/CIAO/ccm/CosPersistentState.idl b/modules/CIAO/ccm/CosPersistentState.idl
new file mode 100644
index 00000000000..b6ce4324fa8
--- /dev/null
+++ b/modules/CIAO/ccm/CosPersistentState.idl
@@ -0,0 +1,21 @@
+// $Id$
+
+/**
+ * @@ This is just a temporary file. Since TAO does not have
+ * CosPersistentState at all, we use this file to define
+ * types necessary to get ComponentBase.idl to compile.
+ */
+
+#if !defined (CIAO_COSPERSISTENTSTATE_PIDL)
+#define CIAO_COSPERSISTENTSTATE_PIDL
+
+module CosPersistentState {
+
+ local interface CatalogBase
+ {
+ };
+
+ typedef sequence<octet> _TypeId;
+ typedef string Pid;
+};
+#endif /* CIAO_COSPERSISTENTSTATE_PIDL */
diff --git a/modules/CIAO/ccm/Security.idl b/modules/CIAO/ccm/Security.idl
new file mode 100644
index 00000000000..ce38f2ce1aa
--- /dev/null
+++ b/modules/CIAO/ccm/Security.idl
@@ -0,0 +1,23 @@
+/**
+ * @@ This is just a temporary file. CIAO doesn't use the security
+ * service in its implementation but just using this local
+ * interface below from the real security service pulls in
+ * 250Kb of footprint
+ *
+ * $Id$
+ */
+
+#if !defined (CIAO_SECURITY_IDL)
+#define CIAO_SECURITY_IDL
+
+#pragma prefix "omg.org"
+
+module SecurityLevel2 {
+
+# pragma version SecurityLevel2 1.8
+
+ local interface Credentials
+ {
+ };
+};
+#endif /* CIAO_SECURITY_IDL */