aaronp-zomg 1.0.2.20080827232412

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (236) hide show
  1. data/History.txt +25 -0
  2. data/Manifest.txt +238 -0
  3. data/README.txt +59 -0
  4. data/Rakefile +43 -0
  5. data/bin/omfg +56 -0
  6. data/lib/scanner.rex +169 -0
  7. data/lib/yacc.y +861 -0
  8. data/lib/zomg.rb +22 -0
  9. data/lib/zomg/idl.rb +14 -0
  10. data/lib/zomg/idl/nodes/attribute.rb +15 -0
  11. data/lib/zomg/idl/nodes/binary.rb +19 -0
  12. data/lib/zomg/idl/nodes/constant.rb +15 -0
  13. data/lib/zomg/idl/nodes/interface.rb +13 -0
  14. data/lib/zomg/idl/nodes/interface_header.rb +14 -0
  15. data/lib/zomg/idl/nodes/member.rb +14 -0
  16. data/lib/zomg/idl/nodes/node.rb +54 -0
  17. data/lib/zomg/idl/nodes/operation.rb +17 -0
  18. data/lib/zomg/idl/nodes/parameter.rb +18 -0
  19. data/lib/zomg/idl/nodes/typedef.rb +13 -0
  20. data/lib/zomg/idl/nodes/union.rb +14 -0
  21. data/lib/zomg/idl/parser.rb +54 -0
  22. data/lib/zomg/idl/visitable.rb +15 -0
  23. data/lib/zomg/idl/visitors/duhr.rb +24 -0
  24. data/lib/zomg/idl/visitors/ruby_sexp.rb +204 -0
  25. data/lib/zomg/idl/visitors/sexp.rb +274 -0
  26. data/lib/zomg/version.rb +3 -0
  27. data/test/assets/array/array1.idl +60 -0
  28. data/test/assets/array/array2.idl +38 -0
  29. data/test/assets/array/array3.idl +8 -0
  30. data/test/assets/array/array4.idl +7 -0
  31. data/test/assets/array/array5.idl +80 -0
  32. data/test/assets/attribute/grid_0attribs_2methods.idl +16 -0
  33. data/test/assets/attribute/grid_1ROattribs_1attribs_0methods.idl +19 -0
  34. data/test/assets/attribute/grid_1ROattribs_1attribs_1methods.idl +19 -0
  35. data/test/assets/attribute/grid_1ROattribs_1attribs_2methods.idl +17 -0
  36. data/test/assets/attribute/grid_1ROattribs_1methods.idl +16 -0
  37. data/test/assets/attribute/grid_1ROattribs_2methods.idl +16 -0
  38. data/test/assets/attribute/grid_1attribs_1methods.idl +17 -0
  39. data/test/assets/attribute/grid_1attribs_2methods.idl +17 -0
  40. data/test/assets/attribute/grid_2ROattribs_0methods.idl +16 -0
  41. data/test/assets/attribute/grid_2ROattribs_1methods.idl +16 -0
  42. data/test/assets/attribute/grid_2ROattribs_2methods.idl +16 -0
  43. data/test/assets/attribute/grid_2attribs_0methods.idl +19 -0
  44. data/test/assets/attribute/grid_2attribs_1methods.idl +19 -0
  45. data/test/assets/attribute/grid_2attribs_2methods.idl +19 -0
  46. data/test/assets/comment/c_style_comments.idl +63 -0
  47. data/test/assets/comment/comment1.idl +57 -0
  48. data/test/assets/comment/cpp_style_comments.idl +168 -0
  49. data/test/assets/comment/shortform.idl +0 -0
  50. data/test/assets/complex/TestCodeSets.idl +10 -0
  51. data/test/assets/complex/TestIntfContext.idl +13 -0
  52. data/test/assets/complex/TestIntfLongLong.idl +51 -0
  53. data/test/assets/complex/TestIntfWChar.idl +52 -0
  54. data/test/assets/complex/any1.idl +22 -0
  55. data/test/assets/complex/complex1.idl +495 -0
  56. data/test/assets/complex/complex2.idl +730 -0
  57. data/test/assets/complex/complex3.idl +181 -0
  58. data/test/assets/complex/complex4.idl +181 -0
  59. data/test/assets/complex/interop_wchar.idl +60 -0
  60. data/test/assets/constant/constant1.idl +37 -0
  61. data/test/assets/constant/constant2.idl +29 -0
  62. data/test/assets/constant/constant3.idl +50 -0
  63. data/test/assets/constant/constant4.idl +21 -0
  64. data/test/assets/constant/constant5.idl +65 -0
  65. data/test/assets/constant/constant6.idl +144 -0
  66. data/test/assets/constant/constant7.idl +30 -0
  67. data/test/assets/enum/enum1.idl +13 -0
  68. data/test/assets/exception/TestIntfExceptions.idl +69 -0
  69. data/test/assets/exception/TestIntfExceptionsExt_2_0.idl +34 -0
  70. data/test/assets/exception/TestIntfExceptionsExt_2_3.idl +24 -0
  71. data/test/assets/exception/ex1.idl +6 -0
  72. data/test/assets/exception/ex2.idl +18 -0
  73. data/test/assets/exception/ex3.idl +10 -0
  74. data/test/assets/exception/ex4.idl +20 -0
  75. data/test/assets/exception/sc.idl +0 -0
  76. data/test/assets/exception/simple1.idl +18 -0
  77. data/test/assets/exception/simple2.idl +25 -0
  78. data/test/assets/factory/factory1.idl +77 -0
  79. data/test/assets/factory/objref.idl +25 -0
  80. data/test/assets/forward/forward.idl +15 -0
  81. data/test/assets/forward/forward1.idl +13 -0
  82. data/test/assets/forward/fwd_incl1.idl +6 -0
  83. data/test/assets/forward/fwd_incl2.idl +7 -0
  84. data/test/assets/include/a.idl +23 -0
  85. data/test/assets/include/b.idl +16 -0
  86. data/test/assets/include/employee.idl +12 -0
  87. data/test/assets/include/include1.idl +10 -0
  88. data/test/assets/include/include2.idl +5 -0
  89. data/test/assets/include/manager.idl +10 -0
  90. data/test/assets/include/pragma.idl +41 -0
  91. data/test/assets/include/rookie.idl +13 -0
  92. data/test/assets/include/rookiemanager.idl +15 -0
  93. data/test/assets/include/sample.idl +58 -0
  94. data/test/assets/include/sample_incl.idl +406 -0
  95. data/test/assets/inherit/IDL1.idl +18 -0
  96. data/test/assets/inherit/IDL2.idl +18 -0
  97. data/test/assets/inherit/IDL3.idl +18 -0
  98. data/test/assets/inherit/IDL4.idl +17 -0
  99. data/test/assets/inherit/diamond_inheritance.idl +31 -0
  100. data/test/assets/inherit/inherit.idl +27 -0
  101. data/test/assets/limit/longidentifiers.idl +25 -0
  102. data/test/assets/limit/namelens.idl +26 -0
  103. data/test/assets/limit/tpztest.idl +21 -0
  104. data/test/assets/module/module1.idl +29 -0
  105. data/test/assets/module/module2.idl +34 -0
  106. data/test/assets/module/module3.idl +20 -0
  107. data/test/assets/module/module4.idl +15 -0
  108. data/test/assets/nested/nested1.idl +5 -0
  109. data/test/assets/nested/nested2.idl +11 -0
  110. data/test/assets/operations/Benchmark.idl +331 -0
  111. data/test/assets/operations/CCS.idl +82 -0
  112. data/test/assets/operations/TestIntf.idl +40 -0
  113. data/test/assets/operations/TestIntfBasic.idl +653 -0
  114. data/test/assets/operations/atomic.idl +40 -0
  115. data/test/assets/operations/dif2.idl +48 -0
  116. data/test/assets/operations/interface1.idl +16 -0
  117. data/test/assets/operations/parameters.idl +111 -0
  118. data/test/assets/operations/perf.idl +84 -0
  119. data/test/assets/operations/timer.idl +104 -0
  120. data/test/assets/preprocess/base_for_diamond_inheritance_with_macros.idl +17 -0
  121. data/test/assets/preprocess/basic_macro_marshalling.idl +54 -0
  122. data/test/assets/preprocess/diamond_inheritance_with_macros.idl +74 -0
  123. data/test/assets/preprocess/macro1.idl +52 -0
  124. data/test/assets/preprocess/preprocess1.idl +246 -0
  125. data/test/assets/preprocess/preprocess2.idl +3 -0
  126. data/test/assets/recursion/loop.idl +28 -0
  127. data/test/assets/recursion/recursion1.idl +47 -0
  128. data/test/assets/recursion/recursion2.idl +74 -0
  129. data/test/assets/scenarios/filestat.idl +69 -0
  130. data/test/assets/scenarios/gateway.idl +176 -0
  131. data/test/assets/scenarios/library.idl +20 -0
  132. data/test/assets/scenarios/phone.idl +24 -0
  133. data/test/assets/scenarios/ticketservice.idl +118 -0
  134. data/test/assets/scope/scope01.idl +58 -0
  135. data/test/assets/scope/scope02.idl +25 -0
  136. data/test/assets/scope/scope03.idl +22 -0
  137. data/test/assets/scope/scope04.idl +27 -0
  138. data/test/assets/scope/scope05.idl +30 -0
  139. data/test/assets/scope/scope06.idl +51 -0
  140. data/test/assets/scope/scope07.idl +20 -0
  141. data/test/assets/scope/scope08.idl +88 -0
  142. data/test/assets/scope/scope09.idl +21 -0
  143. data/test/assets/scope/scope10.idl +95 -0
  144. data/test/assets/scope/scope11.idl +62 -0
  145. data/test/assets/scope/scope12.idl +117 -0
  146. data/test/assets/scope/scope13.idl +117 -0
  147. data/test/assets/scope/scope14.idl +117 -0
  148. data/test/assets/scope/scope15.idl +117 -0
  149. data/test/assets/scope/scope16.idl +117 -0
  150. data/test/assets/scope/scope17.idl +117 -0
  151. data/test/assets/scope/scope18.idl +117 -0
  152. data/test/assets/scope/scope19.idl +117 -0
  153. data/test/assets/scope/scope20.idl +215 -0
  154. data/test/assets/scope/scope21.idl +215 -0
  155. data/test/assets/scope/scope22.idl +205 -0
  156. data/test/assets/scope/scope23.idl +261 -0
  157. data/test/assets/scope/scope24.idl +376 -0
  158. data/test/assets/scope/scope25.idl +266 -0
  159. data/test/assets/scope/scope26.idl +180 -0
  160. data/test/assets/scope/scope27.idl +184 -0
  161. data/test/assets/scope/scope28.idl +182 -0
  162. data/test/assets/scope/scope29.idl +182 -0
  163. data/test/assets/scope/scope30.idl +40 -0
  164. data/test/assets/scope/scope31.idl +33 -0
  165. data/test/assets/scope/scope32.idl +37 -0
  166. data/test/assets/scope/scope33.idl +50 -0
  167. data/test/assets/scope/scope34.idl +97 -0
  168. data/test/assets/scope/scope35.idl +72 -0
  169. data/test/assets/scope/scope36.idl +167 -0
  170. data/test/assets/scope/scope37.idl +57 -0
  171. data/test/assets/scope/scope38.idl +38 -0
  172. data/test/assets/scope/scope39.idl +38 -0
  173. data/test/assets/scope/scope40.idl +38 -0
  174. data/test/assets/scope/scope41.idl +24 -0
  175. data/test/assets/scope/scope42.idl +64 -0
  176. data/test/assets/scope/scope43.idl +66 -0
  177. data/test/assets/scope/scope44.idl +52 -0
  178. data/test/assets/sequence/sequence1.idl +24 -0
  179. data/test/assets/sequence/sequence2.idl +9 -0
  180. data/test/assets/simple/basictypes1.idl +80 -0
  181. data/test/assets/simple/basictypes2.idl +197 -0
  182. data/test/assets/simple/basictypes3.idl +23 -0
  183. data/test/assets/simple/basictypes4.idl +73 -0
  184. data/test/assets/simple/basictypes5.idl +29 -0
  185. data/test/assets/simple/basictypes6.idl +63 -0
  186. data/test/assets/simple/simple1.idl +45 -0
  187. data/test/assets/simple/simple2.idl +61 -0
  188. data/test/assets/simple/simple3.idl +36 -0
  189. data/test/assets/string/string1.idl +11 -0
  190. data/test/assets/string/string2.idl +29 -0
  191. data/test/assets/struct/struct1.idl +20 -0
  192. data/test/assets/struct/struct2.idl +21 -0
  193. data/test/assets/struct/struct3.idl +42 -0
  194. data/test/assets/struct/struct4.idl +57 -0
  195. data/test/assets/struct/struct5.idl +71 -0
  196. data/test/assets/typecode/orb.idl +0 -0
  197. data/test/assets/typecode/pseudo.idl +25 -0
  198. data/test/assets/typedef/shorthand_typedef_struct_insideIF.idl +17 -0
  199. data/test/assets/typedef/shorthand_typedef_struct_insideIF_noMO.idl +16 -0
  200. data/test/assets/typedef/shorthand_typedef_struct_insideMO.idl +17 -0
  201. data/test/assets/typedef/shorthand_typedef_struct_outsideMO.idl +17 -0
  202. data/test/assets/typedef/typedef1.idl +8 -0
  203. data/test/assets/typedef/typedef2.idl +22 -0
  204. data/test/assets/typedef/typedef_struct_insideIF.idl +18 -0
  205. data/test/assets/typedef/typedef_struct_insideMO.idl +18 -0
  206. data/test/assets/typedef/typedef_struct_outsideMO.idl +18 -0
  207. data/test/assets/union/union1.idl +31 -0
  208. data/test/assets/union/union2.idl +22 -0
  209. data/test/assets/union/union3.idl +26 -0
  210. data/test/conversions/test_attribute.rb +46 -0
  211. data/test/conversions/test_enum.rb +25 -0
  212. data/test/conversions/test_exception.rb +24 -0
  213. data/test/conversions/test_forward_declaration.rb +22 -0
  214. data/test/conversions/test_interface.rb +30 -0
  215. data/test/conversions/test_module.rb +24 -0
  216. data/test/conversions/test_struct.rb +25 -0
  217. data/test/conversions/test_typedef.rb +22 -0
  218. data/test/conversions/test_union.rb +27 -0
  219. data/test/conversions/test_value_box_dcl.rb +22 -0
  220. data/test/helper.rb +23 -0
  221. data/test/simple/test_basictypes1.rb +87 -0
  222. data/test/simple/test_basictypes2.rb +18 -0
  223. data/test/simple/test_basictypes3.rb +32 -0
  224. data/test/simple/test_basictypes4.rb +25 -0
  225. data/test/simple/test_basictypes5.rb +17 -0
  226. data/test/simple/test_basictypes6.rb +19 -0
  227. data/test/simple/test_simple1.rb +40 -0
  228. data/test/simple/test_simple2.rb +48 -0
  229. data/test/simple/test_simple3.rb +20 -0
  230. data/test/test_array.rb +22 -0
  231. data/test/test_assets.rb +33 -0
  232. data/test/test_complex.rb +17 -0
  233. data/test/test_node.rb +16 -0
  234. data/test/test_parser.rb +17 -0
  235. data/test/test_scanner.rb +234 -0
  236. metadata +334 -0
@@ -0,0 +1,730 @@
1
+ // Description : CORBA IDL containing an interface that
2
+ // has multiple methods, each testing a complex datatype
3
+
4
+ /**
5
+ * Module that contains interfaces for complex tests. IDLs contained in
6
+ * this module includes the following:
7
+ * <UL>
8
+ * <LI>Complex data types including structures, sequences, unions, etc.
9
+ * <LI>Interface that contains Two-way operations
10
+ * </UL>
11
+ */
12
+ module TwoWayComplexTest
13
+ {
14
+ /**
15
+ * User exception that can be returned by the CORBA server
16
+ */
17
+ exception ComplexEx { };
18
+
19
+ /**
20
+ * Complex structure consisting of a string value and a
21
+ * sequence of floating point values
22
+ */
23
+ struct ComplexStructure
24
+ {
25
+ string string_value;
26
+ sequence<float> sequence_value;
27
+ };
28
+
29
+ /**
30
+ * A complex array consisting of 2 elements. Each element is a complex
31
+ * structure type
32
+ */
33
+ typedef ComplexStructure ComplexArray[2];
34
+
35
+ /**
36
+ * A complex unbounded sequence that holds any data types
37
+ */
38
+ typedef sequence<any> ComplexSequence;
39
+
40
+ /**
41
+ * An enumeration consisting of 5 elements, E1 to E5. The enumeration
42
+ * is used to test Union data types, based on a switch case of enum values
43
+ */
44
+ enum TestEnum { E1, E2, E3, E4, E5 };
45
+
46
+ /**
47
+ * An array consisting of 5 elements. Each element is a short
48
+ * data type. The array of 5 shorts is typedef-ed into the name
49
+ * "short"
50
+ */
51
+ typedef short short_array[5];
52
+
53
+ /**
54
+ * An array consisting of 5 elements. Each element is a double
55
+ * data type. The array of 5 doubled is typedef-ed into the name
56
+ * "double"
57
+ */
58
+ typedef double double_array[5];
59
+
60
+ /**
61
+ * An array consisting of 5 elements. Each element is a string
62
+ * data type. The array of 5 strings is typedef-ed into the name
63
+ * "string"
64
+ */
65
+ typedef string string_array[5];
66
+
67
+ /**
68
+ * A union that discriminates based on an enumeration, <CODE>TestEnum
69
+ * </CODE>. The discrimination rules are as follows:
70
+ * <UL>
71
+ * <LI>If discriminator is TestEnum::E1, return an array of short values
72
+ * <LI>If discriminator is TestEnum::E2, return an array of double values
73
+ * <LI>If discriminator is TestEnum::E3, return a long value
74
+ * <LI>If discriminator is TestEnum::E4, return a complex structure
75
+ * <LI>If discriminator is TestEnum::E5, return an array of string values
76
+ * </UL>
77
+ */
78
+ union ComplexUnion switch(TestEnum)
79
+ {
80
+ case E1:
81
+ short_array s;
82
+ case E2:
83
+ double_array d;
84
+ case E3:
85
+ long l;
86
+ case E4:
87
+ ComplexStructure cs;
88
+ default:
89
+ string_array str;
90
+ };
91
+
92
+ /**
93
+ * Two-way interface for complex data types. Clients and servers written
94
+ * using this interface can be used with all services.
95
+ */
96
+ interface com2wcor
97
+ {
98
+ /**
99
+ * Two-way method that does nothing. Although this is a test for
100
+ * complex data types, this method is a good place to start to test
101
+ * the adapter's core functionality. The method raises a complex
102
+ * exception when passed the correct parameter <CODE>(Server -ex)
103
+ * </CODE>.<BR>
104
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
105
+ * For CORBA to SDK, the CORBA client will be written with this method.
106
+ * For SDK to CORBA, the CORBA server will be written with this method.
107
+ * @author Kunal Ashar
108
+ * @param void
109
+ * @return void
110
+ */
111
+ void test_void() raises(ComplexEx);
112
+
113
+ /**
114
+ * Two-way method that tests the adapter ability to handle short
115
+ * data types Although this is a test for complex data types, this
116
+ * method is a good place to start to test the adapter's core
117
+ * functionality. The method raises a complex exception when
118
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
119
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
120
+ * For CORBA to SDK, the CORBA client will be written with this method.
121
+ * For SDK to CORBA, the CORBA server will be written with this method.
122
+ * @author Kunal Ashar
123
+ * @param out short ovalue: Takes a reference to a short value. Since
124
+ * the direction is "out" only, the method only fills the value and
125
+ * returns it back to the caller. Typically, the value 1 is returned
126
+ * back
127
+ * @param inout short value: Takes a reference to a short value. Since
128
+ * the direction is "inout", the method takes in a value and fills
129
+ * another value and returns it back to the caller. Typically, the
130
+ * value 0 is passed into the parameter, and the value 1 is returned
131
+ * back
132
+ * @param in short ivalue: Takes a reference to a short value. Since
133
+ * the direction is "in" only, the method takes in a value and does
134
+ * not return it back to the caller. Typically, the value 0 is passed
135
+ * into the parameter
136
+ * @return short: Returns a short value to the caller. Typically, the
137
+ * value 1 is returned by this method
138
+ */
139
+ short test_short
140
+ (
141
+ out short ovalue,
142
+ inout short value,
143
+ in short ivalue
144
+ )
145
+ raises(ComplexEx);
146
+
147
+ /**
148
+ * Two-way method that tests the adapter ability to handle long
149
+ * data types Although this is a test for complex data types, this
150
+ * method is a good place to start to test the adapter's core
151
+ * functionality. The method raises a complex exception when
152
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
153
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
154
+ * For CORBA to SDK, the CORBA client will be written with this method.
155
+ * For SDK to CORBA, the CORBA server will be written with this method.
156
+ * @author Kunal Ashar
157
+ * @param out long ovalue: Takes a reference to a long value. Since
158
+ * the direction is "out" only, the method only fills the value and
159
+ * returns it back to the caller. Typically, the value 99999999 is
160
+ * returned
161
+ * back
162
+ * @param inout long value: Takes a reference to a long value. Since
163
+ * the direction is "inout", the method takes in a value and fills
164
+ * another value and returns it back to the caller. Typically, the
165
+ * value 0 is passed into the parameter, and the value 99999999 is
166
+ * returned back
167
+ * @param in long ivalue: Takes a reference to a long value. Since
168
+ * the direction is "in" only, the method takes in a value and does
169
+ * not return it back to the caller. Typically, the value 99999999
170
+ * is passed into the parameter
171
+ * @return long: Returns a long value to the caller. Typically, the
172
+ * value 99999999 is returned by this method
173
+ */
174
+ long test_long
175
+ (
176
+ out long ovalue,
177
+ inout long value,
178
+ in long ivalue
179
+ )
180
+ raises(ComplexEx);
181
+
182
+ /**
183
+ * Two-way method that tests the adapter ability to handle long long
184
+ * data types Although this is a test for complex data types, this
185
+ * method is a good place to start to test the adapter's core
186
+ * functionality. The method raises a complex exception when
187
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
188
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
189
+ * For CORBA to SDK, the CORBA client will be written with this method.
190
+ * For SDK to CORBA, the CORBA server will be written with this method.
191
+ * @author Kunal Ashar
192
+ * @param out long long ovalue: Takes a reference to a long long value.
193
+ * Since the direction is "out" only, the method only fills the value
194
+ * and returns it back to the caller. Typically, the value 99999999 is
195
+ * returned back
196
+ * @param inout long long value: Takes a reference to a long long
197
+ * value. Since the direction is "inout", the method takes in a value
198
+ * and fills another value and returns it back to the caller.
199
+ * Typically, the value 0 is passed into the parameter, and the value
200
+ * 99999999 is returned back
201
+ * @param in long long ivalue: Takes a reference to a long long value.
202
+ * Since the direction is "in" only, the method takes in a value and
203
+ * does not return it back to the caller. Typically, the value 99999999
204
+ * is passed into the parameter
205
+ * @return long long: Returns a long long value to the caller.
206
+ * Typically, the value 99999999 is returned by this method
207
+ */
208
+ long long test_longlong
209
+ (
210
+ out long long ovalue,
211
+ inout long long value,
212
+ in long long ivalue
213
+ )
214
+ raises(ComplexEx);
215
+
216
+ /**
217
+ * Two-way method that tests the adapter ability to handle unsigned
218
+ * short (ushort) data types Although this is a test for complex
219
+ * data types, this method is a good place to start to test the
220
+ * adapter's core functionality. The method raises a complex exception
221
+ * when passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
222
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
223
+ * For CORBA to SDK, the CORBA client will be written with this method.
224
+ * For SDK to CORBA, the CORBA server will be written with this method.
225
+ * @author Kunal Ashar
226
+ * @param out ushort ovalue: Takes a reference to a ushort value. Since
227
+ * the direction is "out" only, the method only fills the value and
228
+ * returns it back to the caller. Typically, the value 1 is returned
229
+ * back
230
+ * @param inout ushort value: Takes a reference to a ushort value.
231
+ * Since the direction is "inout", the method takes in a value and
232
+ * fills another value and returns it back to the caller. Typically,
233
+ * the value 0 is passed into the parameter, and the value 1 is
234
+ * returned =back
235
+ * @param in ushort ivalue: Takes a reference to a ushort value. Since
236
+ * the direction is "in" only, the method takes in a value and does
237
+ * not return it back to the caller. Typically, the value 0 is passed
238
+ * into the parameter
239
+ * @return ushort: Returns a ushort value to the caller. Typically, the
240
+ * value 1 is returned by this method
241
+ */
242
+ unsigned short test_ushort
243
+ (
244
+ out unsigned short ovalue,
245
+ inout unsigned short value,
246
+ in unsigned short ivalue
247
+ )
248
+ raises(ComplexEx);
249
+
250
+ /**
251
+ * Two-way method that tests the adapter ability to handle unsigned
252
+ * long (ulong) data types Although this is a test for complex data
253
+ * types, this method is a good place to start to test the adapter's
254
+ * core functionality. The method raises a complex exception when
255
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
256
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
257
+ * For CORBA to SDK, the CORBA client will be written with this method.
258
+ * For SDK to CORBA, the CORBA server will be written with this method.
259
+ * @author Kunal Ashar
260
+ * @param out ulong ovalue: Takes a reference to a ulong value. Since
261
+ * the direction is "out" only, the method only fills the value and
262
+ * returns it back to the caller. Typically, the value 99999999 is
263
+ * returned back
264
+ * @param inout ulong value: Takes a reference to a ulong value. Since
265
+ * the direction is "inout", the method takes in a value and fills
266
+ * another value and returns it back to the caller. Typically, the
267
+ * value 0 is passed into the parameter, and the value 99999999 is
268
+ * returned back
269
+ * @param in ulong ivalue: Takes a reference to a ulong value. Since
270
+ * the direction is "in" only, the method takes in a value and does
271
+ * not return it back to the caller. Typically, the value 99999999
272
+ * is passed into the parameter
273
+ * @return ulong: Returns a ulong value to the caller. Typically, the
274
+ * value 99999999 is returned by this method
275
+ */
276
+ unsigned long test_ulong
277
+ (
278
+ out unsigned long ovalue,
279
+ inout unsigned long value,
280
+ in unsigned long ivalue
281
+ )
282
+ raises(ComplexEx);
283
+
284
+ /**
285
+ * Two-way method that tests the adapter ability to handle unsigned
286
+ * long long (ulonglong) data types Although this is a test for
287
+ * complex data types, this method is a good place to start to test
288
+ * the adapter's core functionality. The method raises a complex
289
+ * exception when passed the correct parameter <CODE>(Server -ex)
290
+ * </CODE>.<BR>
291
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
292
+ * For CORBA to SDK, the CORBA client will be written with this method.
293
+ * For SDK to CORBA, the CORBA server will be written with this method.
294
+ * @author Kunal Ashar
295
+ * @param out ulonglong ovalue: Takes a reference to a ulonglong value.
296
+ * Since the direction is "out" only, the method only fills the value
297
+ * and returns it back to the caller. Typically, the value 99999999 is
298
+ * returned back
299
+ * @param inout ulonglong value: Takes a reference to a ulonglong
300
+ * value. Since the direction is "inout", the method takes in a value
301
+ * and fills another value and returns it back to the caller.
302
+ * Typically, the value 0 is passed into the parameter, and the value
303
+ * 99999999 is returned back
304
+ * @param in ulonglong ivalue: Takes a reference to a ulonglong value.
305
+ * Since the direction is "in" only, the method takes in a value and
306
+ * does not return it back to the caller. Typically, the value 99999999
307
+ * is passed into the parameter
308
+ * @return ulonglong: Returns a ulonglong value to the caller.
309
+ * Typically, the value 99999999 is returned by this method
310
+ */
311
+ unsigned long long test_ulonglong
312
+ (
313
+ out unsigned long long ovalue,
314
+ inout unsigned long long value,
315
+ in unsigned long long ivalue
316
+ )
317
+ raises(ComplexEx);
318
+
319
+ /**
320
+ * Two-way method that tests the adapter ability to handle floating
321
+ * point (float) data types Although this is a test for complex data
322
+ * types, this method is a good place to start to test the adapter's
323
+ * core functionality. The method raises a complex exception when
324
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
325
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
326
+ * For CORBA to SDK, the CORBA client will be written with this method.
327
+ * For SDK to CORBA, the CORBA server will be written with this method.
328
+ * @author Kunal Ashar
329
+ * @param out float ovalue: Takes a reference to a float value. Since
330
+ * the direction is "out" only, the method only fills the value and
331
+ * returns it back to the caller. Typically, the value 1.0 is returned
332
+ * back
333
+ * @param inout float value: Takes a reference to a float value. Since
334
+ * the direction is "inout", the method takes in a value and fills
335
+ * another value and returns it back to the caller. Typically, the
336
+ * value 0.0 is passed into the parameter, and the value 1.0 is
337
+ * returned back
338
+ * @param in float ivalue: Takes a reference to a float value. Since
339
+ * the direction is "in" only, the method takes in a value and does
340
+ * not return it back to the caller. Typically, the value 0.0 is passed
341
+ * into the parameter
342
+ * @return float: Returns a float value to the caller. Typically, the
343
+ * value 1.0 is returned by this method
344
+ */
345
+ float test_float
346
+ (
347
+ out float ovalue,
348
+ inout float value,
349
+ in float ivalue
350
+ )
351
+ raises(ComplexEx);
352
+
353
+ /**
354
+ * Two-way method that tests the adapter ability to handle double
355
+ * data types Although this is a test for complex data types, this
356
+ * method is a good place to start to test the adapter's core
357
+ * functionality. The method raises a complex exception when
358
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
359
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
360
+ * For CORBA to SDK, the CORBA client will be written with this method.
361
+ * For SDK to CORBA, the CORBA server will be written with this method.
362
+ * @author Kunal Ashar
363
+ * @param out double ovalue: Takes a reference to a double value. Since
364
+ * the direction is "out" only, the method only fills the value and
365
+ * returns it back to the caller. Typically, the value 9999.9999 is
366
+ * returned back
367
+ * @param inout double value: Takes a reference to a double value. Since
368
+ * the direction is "inout", the method takes in a value and fills
369
+ * another value and returns it back to the caller. Typically, the
370
+ * value 0.0 is passed into the parameter, and the value 9999.9999
371
+ * is returned back
372
+ * @param in double ivalue: Takes a reference to a double value. Since
373
+ * the direction is "in" only, the method takes in a value and does
374
+ * not return it back to the caller. Typically, the value
375
+ * 9999.9999 is passed into the parameter
376
+ * @return double: Returns a double value to the caller. Typically, the
377
+ * value 9999.9999 is returned by this method
378
+ */
379
+ double test_double
380
+ (
381
+ out double ovalue,
382
+ inout double value,
383
+ in double ivalue
384
+ )
385
+ raises(ComplexEx);
386
+
387
+ /**
388
+ * Two-way method that tests the adapter ability to handle string
389
+ * data types Although this is a test for complex data types, this
390
+ * method is a good place to start to test the adapter's core
391
+ * functionality. The method raises a complex exception when
392
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
393
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
394
+ * For CORBA to SDK, the CORBA client will be written with this method.
395
+ * For SDK to CORBA, the CORBA server will be written with this method.
396
+ * @author Kunal Ashar
397
+ * @param out string ovalue: Takes a reference to a string value. Since
398
+ * the direction is "out" only, the method only fills the value and
399
+ * returns it back to the caller. Typically, the value "Returning..."
400
+ * is returned back
401
+ * @param inout string value: Takes a reference to a string value. Since
402
+ * the direction is "inout", the method takes in a value and fills
403
+ * another value and returns it back to the caller. Typically, the
404
+ * value "Invoking..." is passed into the parameter, and the value
405
+ * "Returning..." is returned back
406
+ * @param in string ivalue: Takes a reference to a string value. Since
407
+ * the direction is "in" only, the method takes in a value and does
408
+ * not return it back to the caller. Typically, the value
409
+ * "Invoking..." is passed into the parameter
410
+ * @return string: Returns a string value to the caller. Typically, the
411
+ * value "Returning..." is returned by this method
412
+ */
413
+ string test_string
414
+ (
415
+ out string ovalue,
416
+ inout string value,
417
+ in string ivalue
418
+ )
419
+ raises(ComplexEx);
420
+
421
+ /**
422
+ * Two-way method that tests the adapter ability to handle character
423
+ * (char) data types Although this is a test for complex data types,
424
+ * this method is a good place to start to test the adapter's core
425
+ * functionality. The method raises a complex exception when passed
426
+ * the correct parameter <CODE>(Server -ex)</CODE>.<BR>
427
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
428
+ * For CORBA to SDK, the CORBA client will be written with this method.
429
+ * For SDK to CORBA, the CORBA server will be written with this method.
430
+ * @author Kunal Ashar
431
+ * @param out char ovalue: Takes a reference to a value. Since the
432
+ * direction is "out" only, the method only fills the value and
433
+ * returns it back to the caller. Typically, the value 'z' is returned
434
+ * back
435
+ * @param inout char value: Takes a reference to a value. Since the
436
+ * direction is "inout", the method takes in a value and fills another
437
+ * value and returns it back to the caller. Typically, the value 'a'
438
+ * is passed into the parameter, and the value 'z' is returned back
439
+ * @param in char ivalue: Takes a reference to a value. Since the
440
+ * direction is "in" only, the method takes in a value and does not
441
+ * return it back to the caller. Typically, the value 'a' is passed
442
+ * into the parameter
443
+ * @return char: Returns a value to the caller. Typically, the value
444
+ * 'z' is returned by this method
445
+ */
446
+ char test_char
447
+ (
448
+ out char ovalue,
449
+ inout char value,
450
+ in char ivalue
451
+ )
452
+ raises(ComplexEx);
453
+
454
+ /**
455
+ * Two-way method that tests the adapter ability to handle wide string
456
+ * (wstring) data types Although this is a test for complex data types,
457
+ * this method is a good place to start to test the adapter's core
458
+ * functionality. The method raises a complex exception when
459
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
460
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
461
+ * For CORBA to SDK, the CORBA client will be written with this method.
462
+ * For SDK to CORBA, the CORBA server will be written with this method.
463
+ * @author Kunal Ashar
464
+ * @param out wstring ovalue: Takes a reference to a wstring value.
465
+ * Since the direction is "out" only, the method only fills the value
466
+ * and returns it back to the caller. Typically, the value
467
+ * "Returning..." is returned back
468
+ * @param inout wstring value: Takes a reference to a wstring value.
469
+ * Since the direction is "inout", the method takes in a value and
470
+ * fills another value and returns it back to the caller. Typically,
471
+ * the value "Invoking..." is passed into the parameter, and the value
472
+ * "Returning..." is returned back
473
+ * @param in wstring ivalue: Takes a reference to a wstring value.
474
+ * Since the direction is "in" only, the method takes in a value and
475
+ * does not return it back to the caller. Typically, the value
476
+ * "Invoking..." is passed into the parameter
477
+ * @return wstring: Returns a wstring value to the caller. Typically,
478
+ * the value "Returning..." is returned by this method
479
+ */
480
+ wstring test_wstring
481
+ (
482
+ out wstring ovalue,
483
+ inout wstring value,
484
+ in wstring ivalue
485
+ )
486
+ raises(ComplexEx);
487
+
488
+ /**
489
+ * Two-way method that tests the adapter ability to handle wide
490
+ * character (wchar) data types Although this is a test for complex
491
+ * data types, this method is a good place to start to test the
492
+ * adapter's core functionality. The method raises a complex exception
493
+ * when passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
494
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
495
+ * For CORBA to SDK, the CORBA client will be written with this method.
496
+ * For SDK to CORBA, the CORBA server will be written with this method.
497
+ * @author Kunal Ashar
498
+ * @param out wchar ovalue: Takes a reference to a value. Since the
499
+ * direction is "out" only, the method only fills the value and
500
+ * returns it back to the caller. Typically, the value 'z' is returned
501
+ * back
502
+ * @param inout wchar value: Takes a reference to a value. Since the
503
+ * direction is "inout", the method takes in a value and fills another
504
+ * value and returns it back to the caller. Typically, the value 'a'
505
+ * is passed into the parameter, and the value 'z' is returned back
506
+ * @param in wchar ivalue: Takes a reference to a value. Since the
507
+ * direction is "in" only, the method takes in a value and does not
508
+ * return it back to the caller. Typically, the value 'a' is passed
509
+ * into the parameter
510
+ * @return wchar: Returns a value to the caller. Typically, the value
511
+ * 'z' is returned by this method
512
+ */
513
+ wchar test_wchar
514
+ (
515
+ out wchar ovalue,
516
+ inout wchar value,
517
+ in wchar ivalue
518
+ )
519
+ raises(ComplexEx);
520
+
521
+ /**
522
+ * Two-way method that tests the adapter ability to handle enumerated
523
+ * (enum) data types Although this is a test for complex data types,
524
+ * this method is a good place to start to test the adapter's core
525
+ * functionality. The method raises a complex exception when
526
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
527
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
528
+ * For CORBA to SDK, the CORBA client will be written with this method.
529
+ * For SDK to CORBA, the CORBA server will be written with this method.
530
+ * @author Kunal Ashar
531
+ * @param out enum ovalue: Takes a reference to a enum value. Since
532
+ * the direction is "out" only, the method only fills the value and
533
+ * returns it back to the caller. Typically, the value E2 is returned
534
+ * back
535
+ * @param inout enum value: Takes a reference to a enum value. Since
536
+ * the direction is "inout", the method takes in a value and fills
537
+ * another value and returns it back to the caller. Typically, the
538
+ * value E1 is passed into the parameter, and the value E2 is returned
539
+ * back
540
+ * @param in enum ivalue: Takes a reference to a enum value. Since
541
+ * the direction is "in" only, the method takes in a value and does
542
+ * not return it back to the caller. Typically, the value E1 is passed
543
+ * into the parameter
544
+ * @return enum: Returns a enum value to the caller. Typically, the
545
+ * value E2 is returned by this method
546
+ */
547
+ TestEnum test_enum
548
+ (
549
+ out TestEnum ovalue,
550
+ inout TestEnum value,
551
+ in TestEnum ivalue
552
+ )
553
+ raises(ComplexEx);
554
+
555
+ /**
556
+ * Two-way method that tests the adapter ability to handle object
557
+ * references (objref) as any data types. The method raises a complex
558
+ * exception when passed the correct parameter <CODE>(Server -ex)
559
+ * </CODE>.<BR>
560
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
561
+ * For CORBA to SDK, the CORBA client will be written with this method.
562
+ * For SDK to CORBA, the CORBA server will be written with this method.
563
+ * @author Kunal Ashar
564
+ * @param out objref ovalue: Takes a reference to a objref value, as
565
+ * an any. Since the direction is "out" only, the method only fills
566
+ * the value and returns it back to the caller. Typically, the IOR of
567
+ * the server is returned back
568
+ * @param inout objref value: Takes a reference to a objref value.
569
+ * Since the direction is "inout", the method takes in a value and
570
+ * fills another value and returns it back to the caller. Typically,
571
+ * the IOR of the client is passed into the parameter, and the IOR of
572
+ * the server is returned back
573
+ * @param in objref ivalue: Takes a reference to a objref value.
574
+ * Since the direction is "in" only, the method takes in a value and
575
+ * does not return it back to the caller. Typically, the IOR of the
576
+ * client is passed into the parameter
577
+ * @return objref: Returns a objref value to the caller. Typically,
578
+ * the IOR of the server is returned by this method
579
+ */
580
+ any test_obj_ref
581
+ (
582
+ out any ovalue,
583
+ inout any value,
584
+ in any ivalue
585
+ )
586
+ raises(ComplexEx);
587
+
588
+ /**
589
+ * Two-way method that tests the adapter ability to handle union data
590
+ * types. The method raises a complex exception when passed the correct
591
+ * parameter <CODE>(Server -ex)</CODE>.<BR>
592
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
593
+ * For CORBA to SDK, the CORBA client will be written with this method.
594
+ * For SDK to CORBA, the CORBA server will be written with this method.
595
+ * @author Kunal Ashar
596
+ * @param out ComplexUnion ovalue: Takes a reference to a union value.
597
+ * Since the direction is "out" only, the method only fills the value
598
+ * and returns it back to the caller
599
+ * @param inout ComplexUnion value: Takes a reference to a union value.
600
+ * Since the direction is "inout", the method takes in a value and
601
+ * fills another value and returns it back to the caller
602
+ * @param in ComplexUnion ivalue: Takes a reference to a union value.
603
+ * Since the direction is "in" only, the method takes in a value and
604
+ * does not return it back to the caller
605
+ * @return ComplexUnion: Returns a union value to the caller
606
+ */
607
+ ComplexUnion test_union
608
+ (
609
+ in ComplexUnion ivalue,
610
+ inout ComplexUnion value,
611
+ out ComplexUnion ovalue
612
+ )
613
+ raises(ComplexEx);
614
+
615
+ /**
616
+ * Two-way method that tests the adapter ability to handle structure
617
+ * (struct) data types. The method raises a complex exception when
618
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
619
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
620
+ * For CORBA to SDK, the CORBA client will be written with this method.
621
+ * For SDK to CORBA, the CORBA server will be written with this method.
622
+ * @author Kunal Ashar
623
+ * @param out ComplexStructure ovalue: Takes a reference to a struct
624
+ * value. Since the direction is "out" only, the method only fills the
625
+ * value and returns it back to the caller
626
+ * @param inout ComplexStructure value: Takes a reference to a struct
627
+ * value. Since the direction is "inout", the method takes in a value
628
+ * and fills another value and returns it back to the caller
629
+ * @param in ComplexStructure ivalue: Takes a reference to a struct
630
+ * value. Since the direction is "in" only, the method takes in a value
631
+ * and does not return it back to the caller
632
+ * @return ComplexStructure: Returns a struct value to the caller
633
+ */
634
+ ComplexStructure test_struct
635
+ (
636
+ out ComplexStructure ovalue,
637
+ inout ComplexStructure value,
638
+ in ComplexStructure ivalue
639
+ )
640
+ raises(ComplexEx);
641
+
642
+ /**
643
+ * Two-way method that tests the adapter ability to handle array data
644
+ * types. The method raises a complex exception when passed the correct
645
+ * parameter <CODE>(Server -ex)</CODE>.<BR>
646
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
647
+ * For CORBA to SDK, the CORBA client will be written with this method.
648
+ * For SDK to CORBA, the CORBA server will be written with this method.
649
+ * @author Kunal Ashar
650
+ * @param out ComplexArray ovalue: Takes a reference to a array value.
651
+ * Since the direction is "out" only, the method only fills the value
652
+ * and returns it back to the caller
653
+ * @param inout ComplexArray value: Takes a reference to a array value.
654
+ * Since the direction is "inout", the method takes in a value and
655
+ * fills another value and returns it back to the caller
656
+ * @param in ComplexArray ivalue: Takes a reference to a array value.
657
+ * Since the direction is "in" only, the method takes in a value and
658
+ * does not return it back to the caller
659
+ * @return ComplexArray: Returns a array value to the caller
660
+ */
661
+ ComplexArray test_array
662
+ (
663
+ out ComplexArray ovalue,
664
+ inout ComplexArray value,
665
+ in ComplexArray ivalue
666
+ )
667
+ raises(ComplexEx);
668
+
669
+ /**
670
+ * Two-way method that tests the adapter ability to handle sequence
671
+ * data types. The method raises a complex exception when passed the
672
+ * correct parameter <CODE>(Server -ex)</CODE>.<BR>
673
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
674
+ * For CORBA to SDK, the CORBA client will be written with this method.
675
+ * For SDK to CORBA, the CORBA server will be written with this method.
676
+ * @author Kunal Ashar
677
+ * @param out ComplexSequence ovalue: Takes a reference to a sequence
678
+ * value. Since the direction is "out" only, the method only fills the
679
+ * value and returns it back to the caller
680
+ * @param inout ComplexSequence value: Takes a reference to a sequence
681
+ * value. Since the direction is "inout", the method takes in a value
682
+ * and fills another value and returns it back to the caller
683
+ * @param in ComplexSequence ivalue: Takes a reference to a sequence
684
+ * value. Since the direction is "in" only, the method takes in a value
685
+ * and does not return it back to the caller
686
+ * @return ComplexSequence: Returns a sequence value to the caller
687
+ */
688
+ ComplexSequence test_sequence
689
+ (
690
+ out ComplexSequence ovalue,
691
+ inout ComplexSequence value,
692
+ in ComplexSequence ivalue
693
+ )
694
+ raises(ComplexEx);
695
+
696
+ /**
697
+ * Two-way method that tests the adapter ability to handle any
698
+ * data types Although this is a test for complex data types, this
699
+ * method is a good place to start to test the adapter's core
700
+ * functionality. The method raises a complex exception when
701
+ * passed the correct parameter <CODE>(Server -ex)</CODE>.<BR>
702
+ * It is used in both CORBA to SDK and SDK to CORBA two-way scenarios.
703
+ * For CORBA to SDK, the CORBA client will be written with this method.
704
+ * For SDK to CORBA, the CORBA server will be written with this method.
705
+ * @author Kunal Ashar
706
+ * @param out any ovalue: Takes a reference to an any value. Since
707
+ * the direction is "out" only, the method only fills the value and
708
+ * returns it back to the caller. Typically, the value "Returning..."
709
+ * is returned back
710
+ * @param inout any value: Takes a reference to an any value. Since
711
+ * the direction is "inout", the method takes in a value and fills
712
+ * another value and returns it back to the caller. Typically, the
713
+ * value "Invoking..." is passed into the parameter, and the value
714
+ * "Returning..." is returned back
715
+ * @param in any ivalue: Takes a reference to an any value. Since
716
+ * the direction is "in" only, the method takes in a value and does
717
+ * not return it back to the caller. Typically, the value
718
+ * "Invoking..." is passed into the parameter
719
+ * @return any: Returns an any value to the caller. Typically, the
720
+ * value "Returning..." is returned by this method
721
+ */
722
+ any test_any
723
+ (
724
+ out any ovalue,
725
+ inout any value,
726
+ in any ivalue
727
+ )
728
+ raises(ComplexEx);
729
+ };
730
+ };