summaryrefslogtreecommitdiff
path: root/trunk/TAO/tests/OBV/Factory/Factory.idl
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/TAO/tests/OBV/Factory/Factory.idl')
-rw-r--r--trunk/TAO/tests/OBV/Factory/Factory.idl63
1 files changed, 63 insertions, 0 deletions
diff --git a/trunk/TAO/tests/OBV/Factory/Factory.idl b/trunk/TAO/tests/OBV/Factory/Factory.idl
new file mode 100644
index 00000000000..f6fd41a6ab7
--- /dev/null
+++ b/trunk/TAO/tests/OBV/Factory/Factory.idl
@@ -0,0 +1,63 @@
+// $Id$
+
+//
+// This file contains few valuetypes to show and test basic OBV factory
+// construct functionality.
+//
+
+module OBV_FactoryTest
+{
+
+ //
+ // Base valuetype without any ops or factories. Result should be
+ // concrete BaseConcreteValue_init class ready to use.
+ //
+ valuetype BaseValue
+ {
+ // Nested type to check proper visibility.
+ struct BV_Data
+ {
+ unsigned long value;
+ };
+
+ public unsigned long some_data;
+ };
+
+ //
+ // Another valuetype w/o ops, etc. Just to check proper inheritance
+ // of OBV_ classes and RefCounter's. Value1_init should be
+ // concrete as well.
+ //
+ valuetype Value1 : BaseValue
+ {
+ public unsigned long id;
+ };
+
+ //
+ // Valuetype with few factories.
+ //
+ valuetype Value2 : BaseValue
+ {
+ public unsigned long id;
+ public BV_Data data;
+
+ factory create_default (in unsigned long id);
+ factory create (in unsigned long id,
+ in BV_Data data);
+ };
+
+ //
+ // Interface to pass valuetypes.
+ //
+ interface Test
+ {
+ BaseValue get_base_value ();
+ Value1 get_value1 ();
+ Value2 get_value2 ();
+
+ // Shutdown the romote ORB
+ oneway void shutdown ();
+
+ };
+
+};