zomg 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (238) hide show
  1. data/History.txt +6 -0
  2. data/Manifest.txt +237 -0
  3. data/README.txt +59 -0
  4. data/Rakefile +34 -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/lexer.rb +2151 -0
  11. data/lib/zomg/idl/nodes/attribute.rb +15 -0
  12. data/lib/zomg/idl/nodes/binary.rb +19 -0
  13. data/lib/zomg/idl/nodes/constant.rb +15 -0
  14. data/lib/zomg/idl/nodes/interface.rb +13 -0
  15. data/lib/zomg/idl/nodes/interface_header.rb +14 -0
  16. data/lib/zomg/idl/nodes/member.rb +14 -0
  17. data/lib/zomg/idl/nodes/node.rb +52 -0
  18. data/lib/zomg/idl/nodes/operation.rb +17 -0
  19. data/lib/zomg/idl/nodes/parameter.rb +18 -0
  20. data/lib/zomg/idl/nodes/typedef.rb +13 -0
  21. data/lib/zomg/idl/nodes/union.rb +14 -0
  22. data/lib/zomg/idl/parser.rb +54 -0
  23. data/lib/zomg/idl/scanner.rb +367 -0
  24. data/lib/zomg/idl/visitable.rb +15 -0
  25. data/lib/zomg/idl/visitors/duhr.rb +24 -0
  26. data/lib/zomg/idl/visitors/ruby_sexp.rb +173 -0
  27. data/lib/zomg/idl/visitors/sexp.rb +274 -0
  28. data/lib/zomg/version.rb +3 -0
  29. data/test/assets/array/array1.idl +60 -0
  30. data/test/assets/array/array2.idl +38 -0
  31. data/test/assets/array/array3.idl +8 -0
  32. data/test/assets/array/array4.idl +7 -0
  33. data/test/assets/array/array5.idl +80 -0
  34. data/test/assets/attribute/grid_0attribs_2methods.idl +16 -0
  35. data/test/assets/attribute/grid_1ROattribs_1attribs_0methods.idl +19 -0
  36. data/test/assets/attribute/grid_1ROattribs_1attribs_1methods.idl +19 -0
  37. data/test/assets/attribute/grid_1ROattribs_1attribs_2methods.idl +17 -0
  38. data/test/assets/attribute/grid_1ROattribs_1methods.idl +16 -0
  39. data/test/assets/attribute/grid_1ROattribs_2methods.idl +16 -0
  40. data/test/assets/attribute/grid_1attribs_1methods.idl +17 -0
  41. data/test/assets/attribute/grid_1attribs_2methods.idl +17 -0
  42. data/test/assets/attribute/grid_2ROattribs_0methods.idl +16 -0
  43. data/test/assets/attribute/grid_2ROattribs_1methods.idl +16 -0
  44. data/test/assets/attribute/grid_2ROattribs_2methods.idl +16 -0
  45. data/test/assets/attribute/grid_2attribs_0methods.idl +19 -0
  46. data/test/assets/attribute/grid_2attribs_1methods.idl +19 -0
  47. data/test/assets/attribute/grid_2attribs_2methods.idl +19 -0
  48. data/test/assets/comment/c_style_comments.idl +63 -0
  49. data/test/assets/comment/comment1.idl +57 -0
  50. data/test/assets/comment/cpp_style_comments.idl +168 -0
  51. data/test/assets/comment/shortform.idl +0 -0
  52. data/test/assets/complex/TestCodeSets.idl +10 -0
  53. data/test/assets/complex/TestIntfContext.idl +13 -0
  54. data/test/assets/complex/TestIntfLongLong.idl +51 -0
  55. data/test/assets/complex/TestIntfWChar.idl +52 -0
  56. data/test/assets/complex/any1.idl +22 -0
  57. data/test/assets/complex/complex1.idl +495 -0
  58. data/test/assets/complex/complex2.idl +730 -0
  59. data/test/assets/complex/complex3.idl +181 -0
  60. data/test/assets/complex/complex4.idl +181 -0
  61. data/test/assets/complex/interop_wchar.idl +60 -0
  62. data/test/assets/constant/constant1.idl +37 -0
  63. data/test/assets/constant/constant2.idl +29 -0
  64. data/test/assets/constant/constant3.idl +50 -0
  65. data/test/assets/constant/constant4.idl +21 -0
  66. data/test/assets/constant/constant5.idl +65 -0
  67. data/test/assets/constant/constant6.idl +144 -0
  68. data/test/assets/constant/constant7.idl +30 -0
  69. data/test/assets/enum/enum1.idl +13 -0
  70. data/test/assets/exception/TestIntfExceptions.idl +69 -0
  71. data/test/assets/exception/TestIntfExceptionsExt_2_0.idl +34 -0
  72. data/test/assets/exception/TestIntfExceptionsExt_2_3.idl +24 -0
  73. data/test/assets/exception/ex1.idl +6 -0
  74. data/test/assets/exception/ex2.idl +18 -0
  75. data/test/assets/exception/ex3.idl +10 -0
  76. data/test/assets/exception/ex4.idl +20 -0
  77. data/test/assets/exception/sc.idl +0 -0
  78. data/test/assets/exception/simple1.idl +18 -0
  79. data/test/assets/exception/simple2.idl +25 -0
  80. data/test/assets/factory/factory1.idl +77 -0
  81. data/test/assets/factory/objref.idl +25 -0
  82. data/test/assets/forward/forward.idl +15 -0
  83. data/test/assets/forward/forward1.idl +13 -0
  84. data/test/assets/forward/fwd_incl1.idl +6 -0
  85. data/test/assets/forward/fwd_incl2.idl +7 -0
  86. data/test/assets/include/a.idl +23 -0
  87. data/test/assets/include/b.idl +16 -0
  88. data/test/assets/include/employee.idl +12 -0
  89. data/test/assets/include/include1.idl +10 -0
  90. data/test/assets/include/include2.idl +5 -0
  91. data/test/assets/include/manager.idl +10 -0
  92. data/test/assets/include/pragma.idl +41 -0
  93. data/test/assets/include/rookie.idl +13 -0
  94. data/test/assets/include/rookiemanager.idl +15 -0
  95. data/test/assets/include/sample.idl +58 -0
  96. data/test/assets/include/sample_incl.idl +406 -0
  97. data/test/assets/inherit/IDL1.idl +18 -0
  98. data/test/assets/inherit/IDL2.idl +18 -0
  99. data/test/assets/inherit/IDL3.idl +18 -0
  100. data/test/assets/inherit/IDL4.idl +17 -0
  101. data/test/assets/inherit/diamond_inheritance.idl +31 -0
  102. data/test/assets/inherit/inherit.idl +27 -0
  103. data/test/assets/limit/longidentifiers.idl +25 -0
  104. data/test/assets/limit/namelens.idl +26 -0
  105. data/test/assets/limit/tpztest.idl +21 -0
  106. data/test/assets/module/module1.idl +29 -0
  107. data/test/assets/module/module2.idl +34 -0
  108. data/test/assets/module/module3.idl +20 -0
  109. data/test/assets/module/module4.idl +15 -0
  110. data/test/assets/nested/nested1.idl +5 -0
  111. data/test/assets/nested/nested2.idl +11 -0
  112. data/test/assets/operations/Benchmark.idl +331 -0
  113. data/test/assets/operations/CCS.idl +82 -0
  114. data/test/assets/operations/TestIntf.idl +40 -0
  115. data/test/assets/operations/TestIntfBasic.idl +653 -0
  116. data/test/assets/operations/atomic.idl +40 -0
  117. data/test/assets/operations/dif2.idl +48 -0
  118. data/test/assets/operations/interface1.idl +16 -0
  119. data/test/assets/operations/parameters.idl +111 -0
  120. data/test/assets/operations/perf.idl +84 -0
  121. data/test/assets/operations/timer.idl +104 -0
  122. data/test/assets/preprocess/base_for_diamond_inheritance_with_macros.idl +17 -0
  123. data/test/assets/preprocess/basic_macro_marshalling.idl +54 -0
  124. data/test/assets/preprocess/diamond_inheritance_with_macros.idl +74 -0
  125. data/test/assets/preprocess/macro1.idl +52 -0
  126. data/test/assets/preprocess/preprocess1.idl +246 -0
  127. data/test/assets/preprocess/preprocess2.idl +3 -0
  128. data/test/assets/recursion/loop.idl +28 -0
  129. data/test/assets/recursion/recursion1.idl +47 -0
  130. data/test/assets/recursion/recursion2.idl +74 -0
  131. data/test/assets/scenarios/filestat.idl +69 -0
  132. data/test/assets/scenarios/gateway.idl +176 -0
  133. data/test/assets/scenarios/library.idl +20 -0
  134. data/test/assets/scenarios/phone.idl +24 -0
  135. data/test/assets/scenarios/ticketservice.idl +118 -0
  136. data/test/assets/scope/scope01.idl +58 -0
  137. data/test/assets/scope/scope02.idl +25 -0
  138. data/test/assets/scope/scope03.idl +22 -0
  139. data/test/assets/scope/scope04.idl +27 -0
  140. data/test/assets/scope/scope05.idl +30 -0
  141. data/test/assets/scope/scope06.idl +51 -0
  142. data/test/assets/scope/scope07.idl +20 -0
  143. data/test/assets/scope/scope08.idl +88 -0
  144. data/test/assets/scope/scope09.idl +21 -0
  145. data/test/assets/scope/scope10.idl +95 -0
  146. data/test/assets/scope/scope11.idl +62 -0
  147. data/test/assets/scope/scope12.idl +117 -0
  148. data/test/assets/scope/scope13.idl +117 -0
  149. data/test/assets/scope/scope14.idl +117 -0
  150. data/test/assets/scope/scope15.idl +117 -0
  151. data/test/assets/scope/scope16.idl +117 -0
  152. data/test/assets/scope/scope17.idl +117 -0
  153. data/test/assets/scope/scope18.idl +117 -0
  154. data/test/assets/scope/scope19.idl +117 -0
  155. data/test/assets/scope/scope20.idl +215 -0
  156. data/test/assets/scope/scope21.idl +215 -0
  157. data/test/assets/scope/scope22.idl +205 -0
  158. data/test/assets/scope/scope23.idl +261 -0
  159. data/test/assets/scope/scope24.idl +376 -0
  160. data/test/assets/scope/scope25.idl +266 -0
  161. data/test/assets/scope/scope26.idl +180 -0
  162. data/test/assets/scope/scope27.idl +184 -0
  163. data/test/assets/scope/scope28.idl +182 -0
  164. data/test/assets/scope/scope29.idl +182 -0
  165. data/test/assets/scope/scope30.idl +40 -0
  166. data/test/assets/scope/scope31.idl +33 -0
  167. data/test/assets/scope/scope32.idl +37 -0
  168. data/test/assets/scope/scope33.idl +50 -0
  169. data/test/assets/scope/scope34.idl +97 -0
  170. data/test/assets/scope/scope35.idl +72 -0
  171. data/test/assets/scope/scope36.idl +167 -0
  172. data/test/assets/scope/scope37.idl +57 -0
  173. data/test/assets/scope/scope38.idl +38 -0
  174. data/test/assets/scope/scope39.idl +38 -0
  175. data/test/assets/scope/scope40.idl +38 -0
  176. data/test/assets/scope/scope41.idl +24 -0
  177. data/test/assets/scope/scope42.idl +64 -0
  178. data/test/assets/scope/scope43.idl +66 -0
  179. data/test/assets/scope/scope44.idl +52 -0
  180. data/test/assets/sequence/sequence1.idl +24 -0
  181. data/test/assets/sequence/sequence2.idl +9 -0
  182. data/test/assets/simple/basictypes1.idl +80 -0
  183. data/test/assets/simple/basictypes2.idl +197 -0
  184. data/test/assets/simple/basictypes3.idl +23 -0
  185. data/test/assets/simple/basictypes4.idl +73 -0
  186. data/test/assets/simple/basictypes5.idl +29 -0
  187. data/test/assets/simple/basictypes6.idl +63 -0
  188. data/test/assets/simple/simple1.idl +45 -0
  189. data/test/assets/simple/simple2.idl +61 -0
  190. data/test/assets/simple/simple3.idl +36 -0
  191. data/test/assets/string/string1.idl +11 -0
  192. data/test/assets/string/string2.idl +29 -0
  193. data/test/assets/struct/struct1.idl +20 -0
  194. data/test/assets/struct/struct2.idl +21 -0
  195. data/test/assets/struct/struct3.idl +42 -0
  196. data/test/assets/struct/struct4.idl +57 -0
  197. data/test/assets/struct/struct5.idl +71 -0
  198. data/test/assets/typecode/orb.idl +0 -0
  199. data/test/assets/typecode/pseudo.idl +25 -0
  200. data/test/assets/typedef/shorthand_typedef_struct_insideIF.idl +17 -0
  201. data/test/assets/typedef/shorthand_typedef_struct_insideIF_noMO.idl +16 -0
  202. data/test/assets/typedef/shorthand_typedef_struct_insideMO.idl +17 -0
  203. data/test/assets/typedef/shorthand_typedef_struct_outsideMO.idl +17 -0
  204. data/test/assets/typedef/typedef1.idl +8 -0
  205. data/test/assets/typedef/typedef2.idl +22 -0
  206. data/test/assets/typedef/typedef_struct_insideIF.idl +18 -0
  207. data/test/assets/typedef/typedef_struct_insideMO.idl +18 -0
  208. data/test/assets/typedef/typedef_struct_outsideMO.idl +18 -0
  209. data/test/assets/union/union1.idl +31 -0
  210. data/test/assets/union/union2.idl +22 -0
  211. data/test/assets/union/union3.idl +26 -0
  212. data/test/conversions/test_attribute.rb +30 -0
  213. data/test/conversions/test_enum.rb +25 -0
  214. data/test/conversions/test_exception.rb +24 -0
  215. data/test/conversions/test_forward_declaration.rb +22 -0
  216. data/test/conversions/test_interface.rb +30 -0
  217. data/test/conversions/test_module.rb +24 -0
  218. data/test/conversions/test_struct.rb +25 -0
  219. data/test/conversions/test_typedef.rb +22 -0
  220. data/test/conversions/test_union.rb +27 -0
  221. data/test/conversions/test_value_box_dcl.rb +22 -0
  222. data/test/helper.rb +23 -0
  223. data/test/simple/test_basictypes1.rb +87 -0
  224. data/test/simple/test_basictypes2.rb +18 -0
  225. data/test/simple/test_basictypes3.rb +32 -0
  226. data/test/simple/test_basictypes4.rb +25 -0
  227. data/test/simple/test_basictypes5.rb +17 -0
  228. data/test/simple/test_basictypes6.rb +19 -0
  229. data/test/simple/test_simple1.rb +40 -0
  230. data/test/simple/test_simple2.rb +48 -0
  231. data/test/simple/test_simple3.rb +20 -0
  232. data/test/test_array.rb +22 -0
  233. data/test/test_assets.rb +33 -0
  234. data/test/test_complex.rb +17 -0
  235. data/test/test_node.rb +15 -0
  236. data/test/test_parser.rb +17 -0
  237. data/test/test_scanner.rb +234 -0
  238. metadata +336 -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
+ };