r2corba 1.5.1-universal-java

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 (271) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGES +173 -0
  3. data/LICENSE +59 -0
  4. data/LICENSE.jacorb +660 -0
  5. data/README +62 -0
  6. data/THANKS +54 -0
  7. data/bin/r2corba +8 -0
  8. data/bin/r2corba.bat +20 -0
  9. data/bin/ridlc +11 -0
  10. data/bin/ridlc.bat +23 -0
  11. data/bin/rins +7 -0
  12. data/bin/rins.bat +19 -0
  13. data/jacorb/lib/antlr-2.7.2.jar +0 -0
  14. data/jacorb/lib/jacorb-3.5.jar +0 -0
  15. data/jacorb/lib/jacorb-omgapi-3.5.jar +0 -0
  16. data/jacorb/lib/jacorb-services-3.5.jar +0 -0
  17. data/jacorb/lib/slf4j-api-1.7.6.jar +0 -0
  18. data/jacorb/lib/slf4j-jdk14-1.7.6.jar +0 -0
  19. data/lib/corba.rb +16 -0
  20. data/lib/corba/cbase/IORMap.rb +33 -0
  21. data/lib/corba/cbase/ORB.rb +237 -0
  22. data/lib/corba/cbase/Request.rb +134 -0
  23. data/lib/corba/cbase/Streams.rb +129 -0
  24. data/lib/corba/cbase/Stub.rb +19 -0
  25. data/lib/corba/cbase/Typecode.rb +441 -0
  26. data/lib/corba/cbase/Values.rb +129 -0
  27. data/lib/corba/cbase/exception.rb +66 -0
  28. data/lib/corba/cbase/poa.rb +23 -0
  29. data/lib/corba/cbase/policies.rb +78 -0
  30. data/lib/corba/cbase/post_require.rb +14 -0
  31. data/lib/corba/cbase/require.rb +28 -0
  32. data/lib/corba/cmds/base.rb +85 -0
  33. data/lib/corba/cmds/test.rb +30 -0
  34. data/lib/corba/common/Any.rb +91 -0
  35. data/lib/corba/common/IDL.rb +104 -0
  36. data/lib/corba/common/ORB.rb +368 -0
  37. data/lib/corba/common/Object.rb +208 -0
  38. data/lib/corba/common/Request.rb +20 -0
  39. data/lib/corba/common/Servant.rb +108 -0
  40. data/lib/corba/common/Struct.rb +22 -0
  41. data/lib/corba/common/Stub.rb +79 -0
  42. data/lib/corba/common/Typecode.rb +1121 -0
  43. data/lib/corba/common/Union.rb +56 -0
  44. data/lib/corba/common/Values.rb +92 -0
  45. data/lib/corba/common/const.rb +22 -0
  46. data/lib/corba/common/exception.rb +68 -0
  47. data/lib/corba/common/require.rb +27 -0
  48. data/lib/corba/common/version.rb +22 -0
  49. data/lib/corba/idl/BiDirPolicyC.rb +63 -0
  50. data/lib/corba/idl/CosNamingC.rb +461 -0
  51. data/lib/corba/idl/CosNamingS.rb +309 -0
  52. data/lib/corba/idl/IDL.rb +21 -0
  53. data/lib/corba/idl/IORTable.pidl +62 -0
  54. data/lib/corba/idl/MessagingC.rb +904 -0
  55. data/lib/corba/idl/POAC.rb +930 -0
  56. data/lib/corba/idl/TAO_Ext.pidl +46 -0
  57. data/lib/corba/idl/r2c_orb.rb +572 -0
  58. data/lib/corba/idl/require.rb +20 -0
  59. data/lib/corba/jbase/Any.rb +273 -0
  60. data/lib/corba/jbase/IORMap.rb +36 -0
  61. data/lib/corba/jbase/ORB.rb +112 -0
  62. data/lib/corba/jbase/Object.rb +99 -0
  63. data/lib/corba/jbase/Request.rb +226 -0
  64. data/lib/corba/jbase/Servant.rb +248 -0
  65. data/lib/corba/jbase/ServerRequest.rb +128 -0
  66. data/lib/corba/jbase/Streams.rb +671 -0
  67. data/lib/corba/jbase/Stub.rb +38 -0
  68. data/lib/corba/jbase/Typecode.rb +520 -0
  69. data/lib/corba/jbase/Values.rb +173 -0
  70. data/lib/corba/jbase/exception.rb +106 -0
  71. data/lib/corba/jbase/poa.rb +229 -0
  72. data/lib/corba/jbase/policies.rb +300 -0
  73. data/lib/corba/jbase/post_require.rb +14 -0
  74. data/lib/corba/jbase/require.rb +89 -0
  75. data/lib/corba/naming.rb +14 -0
  76. data/lib/corba/naming_service.rb +15 -0
  77. data/lib/corba/poa.rb +15 -0
  78. data/lib/corba/policies.rb +18 -0
  79. data/lib/corba/require.rb +17 -0
  80. data/lib/corba/svcs/ins/cos_naming.rb +426 -0
  81. data/lib/corba/svcs/ins/ins.rb +526 -0
  82. data/lib/corba/svcs/ins/naming_service.rb +119 -0
  83. data/lib/ridlbe/ruby/config.rb +336 -0
  84. data/lib/ridlbe/ruby/orb.pidlc +0 -0
  85. data/lib/ridlbe/ruby/require.rb +16 -0
  86. data/lib/ridlbe/ruby/walker.rb +1582 -0
  87. data/mkrf_conf_bingem.rb +151 -0
  88. data/rakelib/bin.rake +80 -0
  89. data/rakelib/bin.rb +146 -0
  90. data/rakelib/build.rake +87 -0
  91. data/rakelib/config.rake +52 -0
  92. data/rakelib/config.rb +544 -0
  93. data/rakelib/gem.rake +236 -0
  94. data/rakelib/gem.rb +146 -0
  95. data/rakelib/package.rake +26 -0
  96. data/rakelib/test.rake +23 -0
  97. data/test/BiDirectional/Test.idl +34 -0
  98. data/test/BiDirectional/client.rb +132 -0
  99. data/test/BiDirectional/run_test.rb +68 -0
  100. data/test/BiDirectional/server.ior +1 -0
  101. data/test/BiDirectional/server.rb +169 -0
  102. data/test/CORBA_Services/Naming/BindingIterator/Test.idl +27 -0
  103. data/test/CORBA_Services/Naming/BindingIterator/client.rb +121 -0
  104. data/test/CORBA_Services/Naming/BindingIterator/ins.ior +1 -0
  105. data/test/CORBA_Services/Naming/BindingIterator/run_test.rb +82 -0
  106. data/test/CORBA_Services/Naming/BindingIterator/server.rb +109 -0
  107. data/test/CORBA_Services/Naming/Corbaname/Test.idl +27 -0
  108. data/test/CORBA_Services/Naming/Corbaname/client.rb +85 -0
  109. data/test/CORBA_Services/Naming/Corbaname/corbaname.ior +1 -0
  110. data/test/CORBA_Services/Naming/Corbaname/ins.ior +1 -0
  111. data/test/CORBA_Services/Naming/Corbaname/run_test.rb +88 -0
  112. data/test/CORBA_Services/Naming/Corbaname/server.rb +135 -0
  113. data/test/CORBA_Services/Naming/Simple/Test.idl +27 -0
  114. data/test/CORBA_Services/Naming/Simple/client.rb +84 -0
  115. data/test/CORBA_Services/Naming/Simple/ins.ior +1 -0
  116. data/test/CORBA_Services/Naming/Simple/run_test.rb +82 -0
  117. data/test/CORBA_Services/Naming/Simple/server.rb +109 -0
  118. data/test/Collocation/Diamond.idl +39 -0
  119. data/test/Collocation/run_test.rb +52 -0
  120. data/test/Collocation/test.rb +195 -0
  121. data/test/Connect_Timeout/Test.idl +27 -0
  122. data/test/Connect_Timeout/client.rb +111 -0
  123. data/test/Connect_Timeout/run_test.rb +52 -0
  124. data/test/DII/Test.idl +27 -0
  125. data/test/DII/client.rb +115 -0
  126. data/test/DII/run_test.rb +69 -0
  127. data/test/DII/server.ior +1 -0
  128. data/test/DII/server.rb +95 -0
  129. data/test/DSI/Test.idl +27 -0
  130. data/test/DSI/client.rb +66 -0
  131. data/test/DSI/run_test.rb +69 -0
  132. data/test/DSI/server.ior +1 -0
  133. data/test/DSI/server.rb +106 -0
  134. data/test/Exceptions/Test.idl +48 -0
  135. data/test/Exceptions/client.rb +118 -0
  136. data/test/Exceptions/run_test.rb +69 -0
  137. data/test/Exceptions/server.ior +1 -0
  138. data/test/Exceptions/server.rb +131 -0
  139. data/test/Hello/Test.idl +27 -0
  140. data/test/Hello/client.rb +78 -0
  141. data/test/Hello/gateway.ior +1 -0
  142. data/test/Hello/run_test.rb +71 -0
  143. data/test/Hello/server.rb +95 -0
  144. data/test/IDL_Test/Test.idl +113 -0
  145. data/test/IDL_Test/Test_inc.idl +17 -0
  146. data/test/IDL_Test/client.rb +102 -0
  147. data/test/IDL_Test/run_test.rb +69 -0
  148. data/test/IDL_Test/server.ior +1 -0
  149. data/test/IDL_Test/server.rb +99 -0
  150. data/test/IORMap/Test.idl +27 -0
  151. data/test/IORMap/client.rb +73 -0
  152. data/test/IORMap/run_test.rb +69 -0
  153. data/test/IORMap/server.ior +1 -0
  154. data/test/IORMap/server.rb +114 -0
  155. data/test/IORTable/Test.idl +27 -0
  156. data/test/IORTable/client.rb +75 -0
  157. data/test/IORTable/run_test.rb +69 -0
  158. data/test/IORTable/server.ior +0 -0
  159. data/test/IORTable/server.rb +130 -0
  160. data/test/Implicit_Conversion/Test.idl +31 -0
  161. data/test/Implicit_Conversion/client.rb +110 -0
  162. data/test/Implicit_Conversion/run_test.rb +69 -0
  163. data/test/Implicit_Conversion/server.ior +1 -0
  164. data/test/Implicit_Conversion/server.rb +99 -0
  165. data/test/Multi_Threading/Multiple_ORB/Test.idl +27 -0
  166. data/test/Multi_Threading/Multiple_ORB/client.rb +82 -0
  167. data/test/Multi_Threading/Multiple_ORB/run_test.rb +71 -0
  168. data/test/Multi_Threading/Multiple_ORB/server.rb +108 -0
  169. data/test/Multi_Threading/Multiple_ORB/server0.ior +1 -0
  170. data/test/Multi_Threading/Multiple_ORB/server1.ior +1 -0
  171. data/test/Multi_Threading/Simple/Test.idl +27 -0
  172. data/test/Multi_Threading/Simple/client.rb +93 -0
  173. data/test/Multi_Threading/Simple/run_test.rb +69 -0
  174. data/test/Multi_Threading/Simple/server.ior +1 -0
  175. data/test/Multi_Threading/Simple/server.rb +118 -0
  176. data/test/Multi_Threading/Threads/Test.idl +31 -0
  177. data/test/Multi_Threading/Threads/client.rb +80 -0
  178. data/test/Multi_Threading/Threads/run_test.rb +76 -0
  179. data/test/Multi_Threading/Threads/server.ior +1 -0
  180. data/test/Multi_Threading/Threads/server.rb +119 -0
  181. data/test/Multi_Threading/Threads/watchdog.ior +1 -0
  182. data/test/Multi_Threading/Threads/watchdog.rb +87 -0
  183. data/test/Multiple_Servant_Interfaces/Test.idl +34 -0
  184. data/test/Multiple_Servant_Interfaces/client.rb +70 -0
  185. data/test/Multiple_Servant_Interfaces/run_test.rb +69 -0
  186. data/test/Multiple_Servant_Interfaces/server.ior +1 -0
  187. data/test/Multiple_Servant_Interfaces/server.rb +102 -0
  188. data/test/Nil/Test.idl +27 -0
  189. data/test/Nil/run_test.rb +52 -0
  190. data/test/Nil/test.rb +78 -0
  191. data/test/OBV/AbstractInterface/client.rb +179 -0
  192. data/test/OBV/AbstractInterface/run_test.rb +69 -0
  193. data/test/OBV/AbstractInterface/server.ior +1 -0
  194. data/test/OBV/AbstractInterface/server.rb +149 -0
  195. data/test/OBV/AbstractInterface/test.idl +53 -0
  196. data/test/OBV/Custom/OBV.idl +18 -0
  197. data/test/OBV/Custom/OBV_impl.rb +40 -0
  198. data/test/OBV/Custom/client.rb +86 -0
  199. data/test/OBV/Custom/run_test.rb +69 -0
  200. data/test/OBV/Custom/server.ior +1 -0
  201. data/test/OBV/Custom/server.rb +100 -0
  202. data/test/OBV/Simple/OBV.idl +15 -0
  203. data/test/OBV/Simple/OBV_impl.rb +26 -0
  204. data/test/OBV/Simple/client.rb +86 -0
  205. data/test/OBV/Simple/run_test.rb +69 -0
  206. data/test/OBV/Simple/server.ior +1 -0
  207. data/test/OBV/Simple/server.rb +100 -0
  208. data/test/OBV/Simple_Event/Event.idl +15 -0
  209. data/test/OBV/Simple_Event/Event_impl.rb +26 -0
  210. data/test/OBV/Simple_Event/client.rb +86 -0
  211. data/test/OBV/Simple_Event/run_test.rb +69 -0
  212. data/test/OBV/Simple_Event/server.ior +1 -0
  213. data/test/OBV/Simple_Event/server.rb +100 -0
  214. data/test/OBV/Supports/client.rb +116 -0
  215. data/test/OBV/Supports/run_test.rb +69 -0
  216. data/test/OBV/Supports/server.ior +1 -0
  217. data/test/OBV/Supports/server.rb +103 -0
  218. data/test/OBV/Supports/supports.idl +33 -0
  219. data/test/OBV/Supports/supports_impl.rb +57 -0
  220. data/test/OBV/Tree/client.rb +116 -0
  221. data/test/OBV/Tree/run_test.rb +69 -0
  222. data/test/OBV/Tree/server.ior +1 -0
  223. data/test/OBV/Tree/server.rb +117 -0
  224. data/test/OBV/Tree/test.idl +32 -0
  225. data/test/OBV/Truncatable/Extra.idl +27 -0
  226. data/test/OBV/Truncatable/Truncatable.idl +105 -0
  227. data/test/OBV/Truncatable/Truncatable_impl.rb +86 -0
  228. data/test/OBV/Truncatable/client.rb +279 -0
  229. data/test/OBV/Truncatable/run_test.rb +69 -0
  230. data/test/OBV/Truncatable/server.ior +1 -0
  231. data/test/OBV/Truncatable/server.rb +89 -0
  232. data/test/OBV/ValueBox/client.rb +497 -0
  233. data/test/OBV/ValueBox/run_test.rb +69 -0
  234. data/test/OBV/ValueBox/server.ior +1 -0
  235. data/test/OBV/ValueBox/server.rb +271 -0
  236. data/test/OBV/ValueBox/valuebox.idl +101 -0
  237. data/test/OBV/ValueBox/vb_basic.idl +75 -0
  238. data/test/OBV/ValueBox/vb_struct.idl +68 -0
  239. data/test/OBV/ValueBox/vb_union.idl +21 -0
  240. data/test/Object/Test.idl +27 -0
  241. data/test/Object/client.rb +112 -0
  242. data/test/Object/run_test.rb +69 -0
  243. data/test/Object/server.ior +1 -0
  244. data/test/Object/server.rb +126 -0
  245. data/test/POA/Test.idl +27 -0
  246. data/test/POA/run_test.rb +52 -0
  247. data/test/POA/test.rb +112 -0
  248. data/test/Param_Test/Test.idl +182 -0
  249. data/test/Param_Test/client.rb +277 -0
  250. data/test/Param_Test/run_test.rb +69 -0
  251. data/test/Param_Test/server.ior +1 -0
  252. data/test/Param_Test/server.rb +296 -0
  253. data/test/Performance/Simple/Test.idl +27 -0
  254. data/test/Performance/Simple/client.rb +90 -0
  255. data/test/Performance/Simple/run_test.rb +69 -0
  256. data/test/Performance/Simple/server.ior +1 -0
  257. data/test/Performance/Simple/server.rb +95 -0
  258. data/test/Policies/Test.idl +27 -0
  259. data/test/Policies/run_test.rb +52 -0
  260. data/test/Policies/test.rb +144 -0
  261. data/test/Timeout/client.rb +207 -0
  262. data/test/Timeout/run_test.rb +69 -0
  263. data/test/Timeout/server.ior +1 -0
  264. data/test/Timeout/server.rb +109 -0
  265. data/test/Timeout/test.idl +19 -0
  266. data/test/lib/assert.rb +43 -0
  267. data/test/lib/test.rb +542 -0
  268. data/test/test.log +20 -0
  269. data/test/test2.log +5000 -0
  270. data/test/test_runner.rb +193 -0
  271. metadata +349 -0
@@ -0,0 +1,91 @@
1
+ #--------------------------------------------------------------------
2
+ # Any.rb - Common definitions for CORBA Any support
3
+ #
4
+ # Author: Martin Corino
5
+ #
6
+ # This program is free software; you can redistribute it and/or
7
+ # modify it under the terms of the R2CORBA LICENSE which is
8
+ # included with this program.
9
+ #
10
+ # Copyright (c) Remedy IT Expertise BV
11
+ # Chamber of commerce Rotterdam nr.276339, The Netherlands
12
+ #--------------------------------------------------------------------
13
+ module R2CORBA
14
+ module CORBA
15
+ class Any
16
+
17
+ def Any.typecode_for_value(val)
18
+ case val
19
+ when CORBA::Any
20
+ return val._tc
21
+ when ::NilClass
22
+ return CORBA._tc_null
23
+ when ::Bignum
24
+ return CORBA._tc_longlong
25
+ when ::Integer
26
+ return CORBA._tc_long
27
+ when ::Float
28
+ return CORBA._tc_double
29
+ when ::TrueClass, ::FalseClass
30
+ return CORBA._tc_boolean
31
+ when ::String
32
+ return CORBA._tc_string
33
+ else
34
+ if val.class.respond_to?(:_tc)
35
+ begin
36
+ tc = val.class._tc
37
+ if tc.is_a? CORBA::TypeCode
38
+ return tc
39
+ end
40
+ rescue
41
+ end
42
+ else
43
+ if val.is_a? CORBA::Object
44
+ return CORBA._tc_Object
45
+ elsif val.is_a? CORBA::TypeCode
46
+ return CORBA._tc_TypeCode
47
+ end
48
+ end
49
+ end
50
+ return nil
51
+ end
52
+
53
+ def Any.value_for_any(any)
54
+ case any
55
+ when CORBA::Any
56
+ return any._value
57
+ else
58
+ return any
59
+ end
60
+ end
61
+
62
+ def Any.to_any(o, tc=nil)
63
+ if tc.nil?
64
+ tc = self.typecode_for_value(o)
65
+ if tc.is_a?(CORBA::TypeCode)
66
+ return new(o, tc)
67
+ end
68
+ raise CORBA::MARSHAL.new('missing TypeCode',0,CORBA::COMPLETED_NO)
69
+ end
70
+ return new(o, tc)
71
+ end
72
+
73
+ def _tc
74
+ @__tc
75
+ end
76
+ def _value
77
+ @__value
78
+ end
79
+
80
+ private_class_method :new
81
+
82
+ protected
83
+
84
+ def initialize(o, tc)
85
+ @__tc = tc
86
+ @__value = o
87
+ end
88
+
89
+ end # Any
90
+ end # CORBA
91
+ end # R2CORBA
@@ -0,0 +1,104 @@
1
+ #--------------------------------------------------------------------
2
+ # IDL.rb - inline IDL loading support
3
+ #
4
+ # Author: Martin Corino
5
+ #
6
+ # This program is free software; you can redistribute it and/or
7
+ # modify it under the terms of the R2CORBA LICENSE which is
8
+ # included with this program.
9
+ #
10
+ # Copyright (c) Remedy IT Expertise BV
11
+ # Chamber of commerce Rotterdam nr.276339, The Netherlands
12
+ #--------------------------------------------------------------------
13
+
14
+ # hardwire RIDL to embedded state for Ruby language mapping
15
+ module IDL
16
+ @@embedded = true
17
+ @@be_name = :ruby
18
+ end
19
+
20
+ begin
21
+ require 'rubygems'
22
+ rescue LoadError
23
+ # ignore error, RIDL may be installed locally not as gem
24
+ end
25
+ require 'ridl/ridl'
26
+
27
+ module R2CORBA
28
+
29
+ module CORBA
30
+
31
+ module IDL
32
+ CLIENT_STUB = 1.freeze
33
+ SERVANT_INTF = 2.freeze
34
+
35
+ @@loaded_idls = {}
36
+
37
+ def IDL.implement(idlfile, params = {}, genbits = CLIENT_STUB)
38
+ idlreg = @@loaded_idls[idlfile]
39
+ if idlreg.nil? || ((idlreg & genbits) != genbits)
40
+ idlreg ||= 0
41
+ if block_given?
42
+ @@loaded_idls[idlfile] = idlreg | genbits
43
+ yield
44
+ else
45
+ params[:includepaths] ||= $:
46
+ fp = find_include(idlfile, params[:includepaths])
47
+ begin
48
+ f = File.open(fp, 'r')
49
+ params.store(:stubs_only, !gen_servant_intf?(idlreg, genbits))
50
+ params.store(:client_stubs, gen_client_stubs?(idlreg, genbits))
51
+ ## check for forced stub generation
52
+ genbits |= CLIENT_STUB if params[:client_stubs]
53
+ @@loaded_idls[idlfile] = (idlreg | genbits)
54
+ ::IDL::RIDL.eval(f, params)
55
+ ensure
56
+ f.close
57
+ end
58
+ end
59
+ end
60
+ end
61
+ private
62
+ def IDL.find_include(fname, paths)
63
+ fpath = if File.file?(fname) && File.readable?(fname)
64
+ fname
65
+ else
66
+ fp = paths.find do |p|
67
+ f = p + "/" + fname
68
+ File.file?(f) && File.readable?(f)
69
+ end
70
+ fp += '/' + fname if !fp.nil?
71
+ fp
72
+ end
73
+ if not fpath.nil?
74
+ return fpath
75
+ end
76
+ raise "Cannot open IDL file '#{fname}'"
77
+ end
78
+
79
+ def IDL.gen_servant_intf?(idlreg, genbits)
80
+ if (genbits & SERVANT_INTF) == SERVANT_INTF
81
+ (idlreg & SERVANT_INTF) != SERVANT_INTF
82
+ else
83
+ false
84
+ end
85
+ end
86
+
87
+ def IDL.gen_client_stubs?(idlreg, genbits)
88
+ if (idlreg & CLIENT_STUB) == CLIENT_STUB
89
+ false
90
+ else
91
+ if (genbits & CLIENT_STUB) == CLIENT_STUB
92
+ true
93
+ else
94
+ ## if servant intf need to be generated we *require* client stubs too
95
+ gen_servant_intf?(idlreg, genbits)
96
+ end
97
+ end
98
+ end
99
+
100
+ end
101
+
102
+ end
103
+
104
+ end
@@ -0,0 +1,368 @@
1
+ #--------------------------------------------------------------------
2
+ # ORB.rb - Common CORBA ORB definitions
3
+ #
4
+ # Author: Martin Corino
5
+ #
6
+ # This program is free software; you can redistribute it and/or
7
+ # modify it under the terms of the R2CORBA LICENSE which is
8
+ # included with this program.
9
+ #
10
+ # Copyright (c) Remedy IT Expertise BV
11
+ # Chamber of commerce Rotterdam nr.276339, The Netherlands
12
+ #--------------------------------------------------------------------
13
+
14
+ module R2CORBA
15
+ module CORBA
16
+
17
+ def CORBA.ORB_init(*args)
18
+ # actual CORBA wrapper implementation implements
19
+ # the ORB.init method
20
+ self::ORB.init(*args)
21
+ end
22
+
23
+ module ORB
24
+ @@wrapper_klass = Class.new do
25
+ include ::R2CORBA::CORBA::ORB
26
+ def initialize(norb)
27
+ @orb_ = norb
28
+ end
29
+ attr_reader :orb_
30
+ end
31
+
32
+ def self._wrap_native(norb)
33
+ raise ArgumentError, 'Expected org.omg.CORBA.ORB' unless norb.nil? || norb.is_a?(Native::ORB)
34
+ norb.nil?() ? norb : @@wrapper_klass.new(norb)
35
+ end
36
+
37
+ ## init() or init(orb_id, prop = {}) or init(argv, orb_id, prop={}) or init(argv, prop={})
38
+ def self.init(*args)
39
+ raise ::CORBA::NO_IMPLEMENT
40
+ end
41
+
42
+ @@cached_orb = nil
43
+
44
+ def self._orb
45
+ @@cached_orb || _singleton_orb_init
46
+ end
47
+
48
+ def ==(other)
49
+ self.class == other.class && self.orb_.eql?(other.orb_)
50
+ end
51
+
52
+ def hash
53
+ self.orb_.hash
54
+ end
55
+
56
+ def dup
57
+ self
58
+ end
59
+
60
+ def clone
61
+ self
62
+ end
63
+
64
+ #obj ::CORBA::Object
65
+ #ret ::String
66
+ def object_to_string(obj)
67
+ raise CORBA::BAD_PARAM.new('CORBA::Object required', 0, CORBA::COMPLETED_NO) unless obj.is_a?(CORBA::Object)
68
+ begin
69
+ self.orb_.object_to_string(obj.objref_)
70
+ rescue ::NativeException
71
+ CORBA::Exception.native2r($!)
72
+ end
73
+ end
74
+
75
+ #str ::String
76
+ #ret ::CORBA::Object
77
+ def string_to_object(str)
78
+ begin
79
+ Object._wrap_native(self.orb_.string_to_object(str))
80
+ rescue ::NativeException
81
+ CORBA::Exception.native2r($!)
82
+ end
83
+ end
84
+
85
+ #str ::Integer
86
+ #ret ::CORBA::NVList
87
+ def create_list(count)
88
+ raise CORBA::NO_IMPLEMENT
89
+ end
90
+
91
+ #str OperationDef
92
+ #ret ::CORBA::NVList
93
+ def create_operation_list(oper)
94
+ raise CORBA::NO_IMPLEMENT
95
+ end
96
+
97
+ #ret Context
98
+ def get_default_context()
99
+ raise CORBA::NO_IMPLEMENT
100
+ end
101
+
102
+ #req RequestSeq
103
+ #ret void
104
+ def send_multiple_request_oneway(req)
105
+ raise CORBA::NO_IMPLEMENT
106
+ end
107
+
108
+ #req RequestSeq
109
+ #ret void
110
+ def send_multiple_request_deferred(req)
111
+ raise CORBA::NO_IMPLEMENT
112
+ end
113
+
114
+ #ret boolean
115
+ def poll_next_response()
116
+ raise CORBA::NO_IMPLEMENT
117
+ end
118
+
119
+ #ret Request
120
+ def get_next_response()
121
+ raise CORBA::NO_IMPLEMENT
122
+ end
123
+
124
+ # Service information operations
125
+
126
+ # ServiceType service_type
127
+ # ret [boolean, ServiceInformation]
128
+ def get_service_information(service_type)
129
+ raise CORBA::NO_IMPLEMENT
130
+ end
131
+
132
+ # ret [::String, ...]
133
+ def list_initial_services()
134
+ self.orb_.list_initial_services()
135
+ end
136
+
137
+ =begin
138
+ // Initial reference operations
139
+ =end
140
+ # ::String identifier
141
+ # ret Object
142
+ # raises InvalidName
143
+ def resolve_initial_references(identifier)
144
+ begin
145
+ Object._wrap_native(self.orb_.resolve_initial_references(identifier))
146
+ rescue ::NativeException
147
+ CORBA::Exception.native2r($!)
148
+ end
149
+ end
150
+
151
+ # ::String identifier
152
+ # CORBA::Object obj
153
+ # ret void
154
+ # raises InvalidName
155
+ def register_initial_reference(identifier, obj)
156
+ raise ::CORBA::NO_IMPLEMENT
157
+ end
158
+
159
+ =begin
160
+ // Type code creation operations
161
+ =end
162
+ # String id
163
+ # String name
164
+ # [] members
165
+ # ret TypeCode
166
+ def create_struct_tc(id, name, *members)
167
+ return CORBA::TypeCode::Struct.new(id.to_s.freeze, name.to_s, nil, members)
168
+ end
169
+
170
+ # String id
171
+ # String name
172
+ # [] members
173
+ # ret TypeCode
174
+ def create_exception_tc(id, name, *members)
175
+ return CORBA::TypeCode::Except.new(id.to_s.freeze, name.to_s, nil, members)
176
+ end
177
+
178
+ # String id
179
+ # String name
180
+ # TypeCode discriminator_type
181
+ # [] members
182
+ # ret TypeCode
183
+ def create_union_tc(id, name, discriminator_type, *members)
184
+ return CORBA::TypeCode::Union.new(id.to_s.freeze, name.to_s, nil, discriminator_type, members)
185
+ end
186
+
187
+ # String id
188
+ # String name
189
+ # [] members
190
+ # ret TypeCode
191
+ def create_enum_tc(id, name, *members)
192
+ return CORBA::TypeCode::Enum.new(id.to_s.freeze, name.to_s, members)
193
+ end
194
+
195
+ # String id
196
+ # String name
197
+ # TypeCode original_type
198
+ # ret TypeCode
199
+ def create_alias_tc(id, name, original_type)
200
+ return CORBA::TypeCode::Alias.new(id.to_s.freeze, name.to_s, nil, original_type)
201
+ end
202
+
203
+ # String id
204
+ # String name
205
+ # ret TypeCode
206
+ def create_interface_tc(id, name)
207
+ return CORBA::TypeCode::ObjectRef.new(id.to_s.freeze, name.to_s, nil)
208
+ end
209
+
210
+ # Integer bound
211
+ # ret TypeCode
212
+ def create_string_tc(bound=nil)
213
+ return CORBA::TypeCode::String.new(bound)
214
+ end
215
+
216
+ # Integer bound
217
+ # ret TypeCode
218
+ def create_wstring_tc(bound=nil)
219
+ return CORBA::TypeCode::WString.new(bound)
220
+ end
221
+
222
+ # Integer(ushort) digits
223
+ # Integer(short) scale
224
+ # ret TypeCode
225
+ def create_fixed_tc(digits, scale)
226
+ return CORBA::TypeCode::Fixed.new(digits, scale)
227
+ end
228
+
229
+ # Integer bound
230
+ # TypeCode element_type
231
+ # ret TypeCode
232
+ def create_sequence_tc(bound, element_type)
233
+ return CORBA::TypeCode::Sequence.new(element_type, bound)
234
+ end
235
+
236
+ # Integer length
237
+ # TypeCode element_type
238
+ # ret TypeCode
239
+ def create_array_tc(length, element_type)
240
+ return CORBA::TypeCode::Array.new(element_type, length)
241
+ end
242
+
243
+ # String id
244
+ # ret TypeCode
245
+ def create_recursive_tc(id)
246
+ return CORBA::TypeCode::Recursive.new(id.to_s.freeze)
247
+ end
248
+
249
+ # RepositoryId id
250
+ # Identifier name
251
+ # ValueModifier type_modifier
252
+ # TypeCode concrete_base
253
+ # ValueMemberSeq members
254
+ # ret TypeCode
255
+ def create_value_tc(id, name, type_modifier, concrete_base, members)
256
+ return CORBA::TypeCode::Valuetype.new(id, name, type_modifier, concrete_base, members)
257
+ end
258
+
259
+ # RepositoryId id
260
+ # Identifier name
261
+ # TypeCode boxed_type
262
+ # ret TypeCode
263
+ def create_value_box_tc (id, name, boxed_type)
264
+ return CORBA::TypeCode::Valuebox.new(id, name, boxed_type)
265
+ end
266
+
267
+ # RepositoryId id
268
+ # Identifier name
269
+ # ret TypeCode
270
+ def create_native_tc(id, name)
271
+ # TODO ORB::create_native_tc
272
+ raise ::CORBA::NO_IMPLEMENT
273
+ end
274
+
275
+ # RepositoryId id
276
+ # Identifier name
277
+ # ret TypeCode
278
+ def create_abstract_interface_tc(id, name)
279
+ return CORBA::TypeCode::AbstractInterface.new(id.to_s.freeze, name.to_s, nil)
280
+ end
281
+
282
+ =begin
283
+ // Thread related operations
284
+ =end
285
+
286
+ # ret boolean
287
+ def work_pending()
288
+ begin
289
+ self.orb_.work_pending()
290
+ rescue ::NativeException
291
+ CORBA::Exception.native2r($!)
292
+ end
293
+ end
294
+
295
+ # ret void
296
+ def perform_work()
297
+ begin
298
+ self.orb_.perform_work()
299
+ rescue ::NativeException
300
+ CORBA::Exception.native2r($!)
301
+ end
302
+ end
303
+
304
+ # ret void
305
+ def run()
306
+ begin
307
+ self.orb_.run()
308
+ rescue ::NativeException
309
+ CORBA::Exception.native2r($!)
310
+ end
311
+ end
312
+
313
+ # boolean wait_for_completion
314
+ # ret void
315
+ def shutdown(wait_for_completion = false)
316
+ begin
317
+ self.orb_.shutdown(wait_for_completion)
318
+ rescue ::NativeException
319
+ CORBA::Exception.native2r($!)
320
+ end
321
+ end
322
+
323
+ # ret void
324
+ def destroy()
325
+ begin
326
+ self.orb_.destroy()
327
+ rescue ::NativeException
328
+ CORBA::Exception.native2r($!)
329
+ end
330
+ end
331
+
332
+ =begin
333
+ // Policy related operations
334
+ =end
335
+
336
+ # PolicyType type
337
+ # any val
338
+ #ret Policy
339
+ #raises PolicyError
340
+ def create_policy(type, val)
341
+ raise ::CORBA::NO_IMPLEMENT
342
+ end
343
+
344
+ =begin
345
+ // Value factory operations
346
+ =end
347
+ # RepositoryId id
348
+ # ValueFactory factory
349
+ #ret ValueFactory
350
+ def register_value_factory(id, factory)
351
+ self.orb_().register_value_factory(id, factory)
352
+ end
353
+
354
+ # RepositoryId id
355
+ # ret void
356
+ def unregister_value_factory(id)
357
+ self.orb_().unregister_value_factory(id)
358
+ end
359
+
360
+ # RepositoryId id
361
+ #ret ValueFactory
362
+ def lookup_value_factory(id)
363
+ self.orb_().lookup_value_factory(id)
364
+ end
365
+ end # ORB
366
+
367
+ end # CORBA
368
+ end # R2CORBA