summaryrefslogtreecommitdiff
path: root/modules/CIAO/ccm/CCM_Object.idl
diff options
context:
space:
mode:
Diffstat (limited to 'modules/CIAO/ccm/CCM_Object.idl')
-rw-r--r--modules/CIAO/ccm/CCM_Object.idl58
1 files changed, 58 insertions, 0 deletions
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 */