r2corba 1.4.1-x86-mingw32 → 1.5.1-x86-mingw32
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.
- checksums.yaml +7 -7
- data/CHANGES +173 -159
- data/LICENSE +59 -59
- data/README +62 -62
- data/THANKS +54 -52
- data/bin/r2corba +1 -1
- data/bin/ridlc +1 -1
- data/bin/rins +1 -1
- data/lib/corba.rb +16 -16
- data/lib/corba/cbase/IORMap.rb +33 -33
- data/lib/corba/cbase/ORB.rb +237 -231
- data/lib/corba/cbase/Request.rb +133 -133
- data/lib/corba/cbase/Streams.rb +129 -129
- data/lib/corba/cbase/Stub.rb +19 -19
- data/lib/corba/cbase/Typecode.rb +441 -441
- data/lib/corba/cbase/Values.rb +129 -129
- data/lib/corba/cbase/exception.rb +66 -66
- data/lib/corba/cbase/poa.rb +23 -23
- data/lib/corba/cbase/policies.rb +77 -77
- data/lib/corba/cbase/post_require.rb +13 -13
- data/lib/corba/cbase/require.rb +28 -28
- data/lib/corba/cmds/base.rb +85 -85
- data/lib/corba/cmds/test.rb +30 -30
- data/lib/corba/common/Any.rb +91 -91
- data/lib/corba/common/IDL.rb +104 -104
- data/lib/corba/common/ORB.rb +368 -368
- data/lib/corba/common/Object.rb +208 -208
- data/lib/corba/common/Request.rb +19 -19
- data/lib/corba/common/Servant.rb +108 -108
- data/lib/corba/common/Struct.rb +21 -21
- data/lib/corba/common/Stub.rb +79 -79
- data/lib/corba/common/Typecode.rb +1121 -1121
- data/lib/corba/common/Union.rb +55 -55
- data/lib/corba/common/Values.rb +91 -91
- data/lib/corba/common/const.rb +22 -22
- data/lib/corba/common/exception.rb +68 -68
- data/lib/corba/common/require.rb +27 -27
- data/lib/corba/common/version.rb +22 -22
- data/lib/corba/idl/IDL.rb +21 -21
- data/lib/corba/idl/IORTable.pidl +62 -62
- data/lib/corba/idl/TAO_Ext.pidl +46 -46
- data/lib/corba/idl/require.rb +20 -20
- data/lib/corba/jbase/Any.rb +273 -273
- data/lib/corba/jbase/IORMap.rb +35 -35
- data/lib/corba/jbase/ORB.rb +112 -99
- data/lib/corba/jbase/Object.rb +99 -98
- data/lib/corba/jbase/Request.rb +225 -225
- data/lib/corba/jbase/Servant.rb +247 -246
- data/lib/corba/jbase/ServerRequest.rb +127 -127
- data/lib/corba/jbase/Streams.rb +670 -670
- data/lib/corba/jbase/Stub.rb +38 -38
- data/lib/corba/jbase/Typecode.rb +520 -520
- data/lib/corba/jbase/Values.rb +173 -173
- data/lib/corba/jbase/exception.rb +106 -106
- data/lib/corba/jbase/poa.rb +228 -228
- data/lib/corba/jbase/policies.rb +299 -299
- data/lib/corba/jbase/post_require.rb +14 -14
- data/lib/corba/jbase/require.rb +89 -86
- data/lib/corba/naming.rb +14 -14
- data/lib/corba/naming_service.rb +15 -15
- data/lib/corba/poa.rb +15 -15
- data/lib/corba/policies.rb +18 -18
- data/lib/corba/require.rb +17 -17
- data/lib/corba/svcs/ins/cos_naming.rb +426 -426
- data/lib/corba/svcs/ins/ins.rb +526 -526
- data/lib/corba/svcs/ins/naming_service.rb +119 -119
- data/lib/ridlbe/ruby/config.rb +336 -336
- data/lib/ridlbe/ruby/orb.pidlc +0 -0
- data/lib/ridlbe/ruby/require.rb +16 -16
- data/lib/ridlbe/ruby/walker.rb +1582 -1582
- data/mkrf_conf_bingem.rb +151 -101
- data/rakelib/bin.rake +80 -80
- data/rakelib/bin.rb +145 -145
- data/rakelib/build.rake +87 -87
- data/rakelib/config.rake +51 -51
- data/rakelib/config.rb +543 -449
- data/rakelib/ext.rake +242 -242
- data/rakelib/ext.rb +316 -308
- data/rakelib/ext_r2tao.rb +235 -232
- data/rakelib/gem.rake +235 -211
- data/rakelib/gem.rb +145 -145
- data/rakelib/package.rake +26 -26
- data/rakelib/test.rake +23 -23
- data/test/BiDirectional/Test.idl +34 -34
- data/test/BiDirectional/client.rb +131 -131
- data/test/BiDirectional/run_test.rb +68 -68
- data/test/BiDirectional/server.ior +1 -1
- data/test/BiDirectional/server.rb +169 -169
- data/test/CORBA_Services/Naming/BindingIterator/Test.idl +27 -27
- data/test/CORBA_Services/Naming/BindingIterator/client.rb +121 -121
- data/test/CORBA_Services/Naming/BindingIterator/ins.ior +1 -1
- data/test/CORBA_Services/Naming/BindingIterator/run_test.rb +82 -82
- data/test/CORBA_Services/Naming/BindingIterator/server.rb +109 -109
- data/test/CORBA_Services/Naming/Corbaname/Test.idl +27 -27
- data/test/CORBA_Services/Naming/Corbaname/client.rb +85 -85
- data/test/CORBA_Services/Naming/Corbaname/ins.ior +1 -1
- data/test/CORBA_Services/Naming/Corbaname/run_test.rb +88 -88
- data/test/CORBA_Services/Naming/Corbaname/server.rb +135 -135
- data/test/CORBA_Services/Naming/Simple/Test.idl +27 -27
- data/test/CORBA_Services/Naming/Simple/client.rb +84 -84
- data/test/CORBA_Services/Naming/Simple/ins.ior +1 -1
- data/test/CORBA_Services/Naming/Simple/run_test.rb +82 -82
- data/test/CORBA_Services/Naming/Simple/server.rb +109 -109
- data/test/Collocation/Diamond.idl +39 -39
- data/test/Collocation/run_test.rb +52 -52
- data/test/Collocation/test.rb +195 -195
- data/test/Connect_Timeout/Test.idl +27 -27
- data/test/Connect_Timeout/client.rb +111 -111
- data/test/Connect_Timeout/run_test.rb +52 -52
- data/test/DII/Test.idl +27 -27
- data/test/DII/client.rb +115 -115
- data/test/DII/run_test.rb +69 -69
- data/test/DII/server.ior +1 -1
- data/test/DII/server.rb +95 -95
- data/test/DSI/Test.idl +27 -27
- data/test/DSI/client.rb +66 -66
- data/test/DSI/run_test.rb +69 -69
- data/test/DSI/server.ior +1 -1
- data/test/DSI/server.rb +106 -106
- data/test/Exceptions/Test.idl +48 -48
- data/test/Exceptions/client.rb +117 -117
- data/test/Exceptions/run_test.rb +69 -69
- data/test/Exceptions/server.ior +1 -1
- data/test/Exceptions/server.rb +131 -131
- data/test/Hello/Test.idl +27 -27
- data/test/Hello/client.rb +78 -78
- data/test/Hello/run_test.rb +71 -71
- data/test/Hello/server.rb +95 -95
- data/test/IDL_Test/Test.idl +113 -113
- data/test/IDL_Test/Test_inc.idl +17 -17
- data/test/IDL_Test/client.rb +102 -102
- data/test/IDL_Test/run_test.rb +69 -69
- data/test/IDL_Test/server.ior +1 -1
- data/test/IDL_Test/server.rb +99 -99
- data/test/IORMap/Test.idl +27 -27
- data/test/IORMap/client.rb +73 -73
- data/test/IORMap/run_test.rb +69 -69
- data/test/IORMap/server.ior +1 -1
- data/test/IORMap/server.rb +114 -114
- data/test/IORTable/Test.idl +27 -27
- data/test/IORTable/client.rb +75 -75
- data/test/IORTable/run_test.rb +69 -69
- data/test/IORTable/server.ior +1 -1
- data/test/IORTable/server.rb +130 -130
- data/test/Implicit_Conversion/Test.idl +31 -31
- data/test/Implicit_Conversion/client.rb +110 -110
- data/test/Implicit_Conversion/run_test.rb +69 -69
- data/test/Implicit_Conversion/server.ior +1 -1
- data/test/Implicit_Conversion/server.rb +99 -99
- data/test/Multi_Threading/Multiple_ORB/Test.idl +27 -27
- data/test/Multi_Threading/Multiple_ORB/client.rb +82 -82
- data/test/Multi_Threading/Multiple_ORB/run_test.rb +71 -71
- data/test/Multi_Threading/Multiple_ORB/server.rb +108 -108
- data/test/Multi_Threading/Multiple_ORB/server0.ior +1 -1
- data/test/Multi_Threading/Multiple_ORB/server1.ior +1 -1
- data/test/Multi_Threading/Simple/Test.idl +27 -27
- data/test/Multi_Threading/Simple/client.rb +93 -88
- data/test/Multi_Threading/Simple/run_test.rb +69 -69
- data/test/Multi_Threading/Simple/server.ior +1 -1
- data/test/Multi_Threading/Simple/server.rb +117 -117
- data/test/Multi_Threading/Threads/Test.idl +31 -31
- data/test/Multi_Threading/Threads/client.rb +80 -80
- data/test/Multi_Threading/Threads/run_test.rb +76 -76
- data/test/Multi_Threading/Threads/server.ior +1 -1
- data/test/Multi_Threading/Threads/server.rb +119 -119
- data/test/Multi_Threading/Threads/watchdog.ior +1 -1
- data/test/Multi_Threading/Threads/watchdog.rb +87 -87
- data/test/Multiple_Servant_Interfaces/Test.idl +34 -34
- data/test/Multiple_Servant_Interfaces/client.rb +70 -70
- data/test/Multiple_Servant_Interfaces/run_test.rb +69 -69
- data/test/Multiple_Servant_Interfaces/server.ior +1 -1
- data/test/Multiple_Servant_Interfaces/server.rb +102 -102
- data/test/Nil/Test.idl +27 -27
- data/test/Nil/run_test.rb +52 -52
- data/test/Nil/test.rb +78 -78
- data/test/OBV/AbstractInterface/client.rb +179 -179
- data/test/OBV/AbstractInterface/run_test.rb +69 -69
- data/test/OBV/AbstractInterface/server.ior +1 -1
- data/test/OBV/AbstractInterface/server.rb +149 -149
- data/test/OBV/AbstractInterface/test.idl +53 -53
- data/test/OBV/Custom/OBV.idl +18 -18
- data/test/OBV/Custom/OBV_impl.rb +40 -40
- data/test/OBV/Custom/client.rb +86 -86
- data/test/OBV/Custom/run_test.rb +69 -69
- data/test/OBV/Custom/server.ior +1 -1
- data/test/OBV/Custom/server.rb +100 -100
- data/test/OBV/Simple/OBV.idl +15 -15
- data/test/OBV/Simple/OBV_impl.rb +26 -26
- data/test/OBV/Simple/client.rb +86 -86
- data/test/OBV/Simple/run_test.rb +69 -69
- data/test/OBV/Simple/server.ior +1 -1
- data/test/OBV/Simple/server.rb +100 -100
- data/test/OBV/Simple_Event/Event.idl +15 -15
- data/test/OBV/Simple_Event/Event_impl.rb +26 -26
- data/test/OBV/Simple_Event/client.rb +86 -86
- data/test/OBV/Simple_Event/run_test.rb +69 -69
- data/test/OBV/Simple_Event/server.ior +1 -1
- data/test/OBV/Simple_Event/server.rb +100 -100
- data/test/OBV/Supports/client.rb +116 -116
- data/test/OBV/Supports/run_test.rb +69 -69
- data/test/OBV/Supports/server.ior +1 -1
- data/test/OBV/Supports/server.rb +103 -103
- data/test/OBV/Supports/supports.idl +33 -33
- data/test/OBV/Supports/supports_impl.rb +57 -57
- data/test/OBV/Tree/client.rb +116 -116
- data/test/OBV/Tree/run_test.rb +69 -69
- data/test/OBV/Tree/server.ior +1 -1
- data/test/OBV/Tree/server.rb +117 -117
- data/test/OBV/Tree/test.idl +32 -32
- data/test/OBV/Truncatable/Extra.idl +27 -27
- data/test/OBV/Truncatable/Truncatable.idl +105 -105
- data/test/OBV/Truncatable/Truncatable_impl.rb +86 -86
- data/test/OBV/Truncatable/client.rb +279 -279
- data/test/OBV/Truncatable/run_test.rb +69 -69
- data/test/OBV/Truncatable/server.ior +1 -1
- data/test/OBV/Truncatable/server.rb +89 -89
- data/test/OBV/ValueBox/client.rb +497 -497
- data/test/OBV/ValueBox/run_test.rb +69 -69
- data/test/OBV/ValueBox/server.ior +1 -1
- data/test/OBV/ValueBox/server.rb +271 -271
- data/test/OBV/ValueBox/valuebox.idl +101 -101
- data/test/OBV/ValueBox/vb_basic.idl +75 -75
- data/test/OBV/ValueBox/vb_struct.idl +68 -68
- data/test/OBV/ValueBox/vb_union.idl +21 -21
- data/test/Object/Test.idl +27 -27
- data/test/Object/client.rb +112 -103
- data/test/Object/run_test.rb +69 -69
- data/test/Object/server.ior +1 -1
- data/test/Object/server.rb +126 -126
- data/test/POA/Test.idl +27 -27
- data/test/POA/run_test.rb +52 -52
- data/test/POA/test.rb +111 -111
- data/test/Param_Test/Test.idl +182 -182
- data/test/Param_Test/client.rb +277 -277
- data/test/Param_Test/run_test.rb +69 -69
- data/test/Param_Test/server.ior +1 -1
- data/test/Param_Test/server.rb +296 -296
- data/test/Performance/Simple/Test.idl +27 -27
- data/test/Performance/Simple/client.rb +90 -90
- data/test/Performance/Simple/run_test.rb +69 -69
- data/test/Performance/Simple/server.ior +1 -1
- data/test/Performance/Simple/server.rb +95 -95
- data/test/Policies/Test.idl +27 -27
- data/test/Policies/run_test.rb +52 -52
- data/test/Policies/test.rb +144 -144
- data/test/Timeout/client.rb +207 -207
- data/test/Timeout/run_test.rb +69 -69
- data/test/Timeout/server.ior +1 -1
- data/test/Timeout/server.rb +109 -109
- data/test/Timeout/test.idl +19 -19
- data/test/lib/assert.rb +43 -43
- data/test/lib/test.rb +542 -542
- data/test/test_runner.rb +193 -193
- metadata +141 -137
data/lib/corba/jbase/IORMap.rb
CHANGED
@@ -1,36 +1,36 @@
|
|
1
|
-
#--------------------------------------------------------------------
|
2
|
-
# iormap.rb - Java/JacORB IORMap 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
|
-
class IORMap
|
16
|
-
def initialize(orb)
|
17
|
-
@orb = orb
|
18
|
-
end
|
19
|
-
|
20
|
-
def map_ior(object_key, ior)
|
21
|
-
begin
|
22
|
-
@orb.orb_.addObjectKey(object_key, ior)
|
23
|
-
rescue ::NativeException
|
24
|
-
CORBA::Exception.native2r($!)
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
def unmap_ior(object_key)
|
29
|
-
begin
|
30
|
-
@orb.orb_.addObjectKey(object_key, nil)
|
31
|
-
rescue ::NativeException
|
32
|
-
CORBA::Exception.native2r($!)
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
1
|
+
#--------------------------------------------------------------------
|
2
|
+
# iormap.rb - Java/JacORB IORMap 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
|
+
class IORMap
|
16
|
+
def initialize(orb)
|
17
|
+
@orb = orb
|
18
|
+
end
|
19
|
+
|
20
|
+
def map_ior(object_key, ior)
|
21
|
+
begin
|
22
|
+
@orb.orb_.addObjectKey(object_key, ior)
|
23
|
+
rescue ::NativeException
|
24
|
+
CORBA::Exception.native2r($!)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
def unmap_ior(object_key)
|
29
|
+
begin
|
30
|
+
@orb.orb_.addObjectKey(object_key, nil)
|
31
|
+
rescue ::NativeException
|
32
|
+
CORBA::Exception.native2r($!)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
36
|
end
|
data/lib/corba/jbase/ORB.rb
CHANGED
@@ -1,99 +1,112 @@
|
|
1
|
-
#--------------------------------------------------------------------
|
2
|
-
# ORB.rb - Java/JacORB 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
|
-
module ORB
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
#
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
end
|
1
|
+
#--------------------------------------------------------------------
|
2
|
+
# ORB.rb - Java/JacORB 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
|
+
module ORB
|
18
|
+
|
19
|
+
class << self
|
20
|
+
protected
|
21
|
+
def _singleton_orb_init
|
22
|
+
begin
|
23
|
+
CORBA::Native::ORB.init
|
24
|
+
rescue ArgumentError
|
25
|
+
# this will happen if java.endorsed.dirs is used with JacORB
|
26
|
+
# in that case just directly init on the singleton class itself
|
27
|
+
CORBA::Native::ORBSingleton.init
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
## init() or init(arg1, arg2[, ...]) or init(orb_id, prop = {}) or init(argv, orb_id, prop={}) or init(argv, prop={})
|
33
|
+
def self.init(*args)
|
34
|
+
n_orb = if args.empty?
|
35
|
+
_singleton_orb_init
|
36
|
+
else
|
37
|
+
argv = []
|
38
|
+
orb_id = nil
|
39
|
+
prop = nil
|
40
|
+
a1, a2, a3 = args
|
41
|
+
if Array === a1
|
42
|
+
raise ArgumentError, "Incorrect nr. of arguments; #{args.size}" if args.size>3
|
43
|
+
argv = a1
|
44
|
+
orb_id = (Hash === a2 ? nil : a2)
|
45
|
+
prop = (Hash === a2 ? a2 : a3)
|
46
|
+
elsif args.size == 1 || Hash === a2
|
47
|
+
raise ArgumentError, "Incorrect nr. of arguments; #{args.size}" if args.size>2
|
48
|
+
orb_id = a1
|
49
|
+
prop = a2
|
50
|
+
else
|
51
|
+
argv = args
|
52
|
+
end
|
53
|
+
raise ArgumentError, "Invalid argument #{prop.class}; expected Hash" unless prop.nil? || Hash === prop
|
54
|
+
jprop = Java::JavaUtil::Properties.new
|
55
|
+
jprop.setProperty('ORBid', orb_id) if orb_id
|
56
|
+
prop.each { |k,v| jprop.setProperty(k.to_s, v.to_s) } if prop
|
57
|
+
@@cached_orb = CORBA::Native::ORB.init(argv.collect {|a| a.to_s }.to_java(:string), jprop)
|
58
|
+
end
|
59
|
+
@@wrapper_klass.new(n_orb)
|
60
|
+
end
|
61
|
+
|
62
|
+
#str ::String
|
63
|
+
#ret ::CORBA::Object
|
64
|
+
def string_to_object(str)
|
65
|
+
begin
|
66
|
+
begin
|
67
|
+
Object._wrap_native(self.orb_.string_to_object(str))
|
68
|
+
rescue ::NativeException
|
69
|
+
CORBA::Exception.native2r($!)
|
70
|
+
end
|
71
|
+
rescue CORBA::BAD_PARAM ## JacORB throws MARSHAL exception on invalid IORs which is not spec compliant
|
72
|
+
return nil
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
# boolean wait_for_completion
|
77
|
+
# ret void
|
78
|
+
def shutdown(wait_for_completion = false)
|
79
|
+
if wait_for_completion
|
80
|
+
# need to start this in separate thread otherwise this will lead to deadlock
|
81
|
+
# (JacORB problem)
|
82
|
+
(Thread.new do
|
83
|
+
begin
|
84
|
+
self.orb_.shutdown(wait_for_completion)
|
85
|
+
rescue ::NativeException
|
86
|
+
CORBA::Exception.native2r($!)
|
87
|
+
end
|
88
|
+
end).join()
|
89
|
+
else
|
90
|
+
# need to start a shutdown *with* waiting in a thread because JacORB
|
91
|
+
# occasionally fails with a comm error when #shutdown(false) is called
|
92
|
+
# from within a servant callback
|
93
|
+
Thread.new do
|
94
|
+
begin
|
95
|
+
self.orb_.shutdown(true)
|
96
|
+
rescue ::NativeException
|
97
|
+
CORBA::Exception.native2r($!)
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
101
|
+
end
|
102
|
+
|
103
|
+
# custom R2CORBA extension : IORMap
|
104
|
+
|
105
|
+
def ior_map
|
106
|
+
@iormap ||= R2CORBA::IORMap.new(self)
|
107
|
+
end
|
108
|
+
|
109
|
+
end
|
110
|
+
|
111
|
+
end # CORBA
|
112
|
+
end # R2CORBA
|
data/lib/corba/jbase/Object.rb
CHANGED
@@ -1,98 +1,99 @@
|
|
1
|
-
#--------------------------------------------------------------------
|
2
|
-
# Object.rb - Java/JacORB CORBA Object 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
|
-
module R2CORBA
|
14
|
-
module CORBA
|
15
|
-
|
16
|
-
module Object
|
17
|
-
|
18
|
-
#ret InterfaceDef
|
19
|
-
def _get_interface()
|
20
|
-
raise ::CORBA::NO_IMPLEMENT
|
21
|
-
#ifdef_obj = self.objref_._get_interface_def rescue CORBA::Exception.native2r($!)
|
22
|
-
#(ifdef_obj = CORBA::Native::InterfaceDefHelper.narrow(ifdef_obj) rescue CORBA::Exception.native2r($!)) unless ifdef_obj.nil?
|
23
|
-
end
|
24
|
-
|
25
|
-
# ::String logical_type_id
|
26
|
-
# ret boolean
|
27
|
-
def _is_a?(logical_type_id)
|
28
|
-
raise CORBA::INV_OBJREF.new if self._is_nil?()
|
29
|
-
## JacORB's LocalObjects throw NO_IMPLEMENT on _is_a?() and _ids() is also not always defined
|
30
|
-
return true if self.objref_.is_a?(CORBA::Native::LocalObject) &&
|
31
|
-
(!self.objref_.respond_to?(:_ids) || self.objref_._ids().include?(logical_type_id))
|
32
|
-
begin
|
33
|
-
self.objref_._is_a(logical_type_id)
|
34
|
-
rescue ::NativeException
|
35
|
-
CORBA::Exception.native2r($!)
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
# ret ::String
|
40
|
-
def _repository_id()
|
41
|
-
raise CORBA::INV_OBJREF.new if self._is_nil?()
|
42
|
-
## if this object ref has already been narrowed
|
43
|
-
return self._interface_repository_id if self.respond_to?(:_interface_repository_id)
|
44
|
-
## ask the remote side
|
45
|
-
## have to do this ourselves since JacORB
|
46
|
-
|
47
|
-
req
|
48
|
-
req.
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
#
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
#
|
71
|
-
#
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
#
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
#
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
end #
|
1
|
+
#--------------------------------------------------------------------
|
2
|
+
# Object.rb - Java/JacORB CORBA Object 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
|
+
module R2CORBA
|
14
|
+
module CORBA
|
15
|
+
|
16
|
+
module Object
|
17
|
+
|
18
|
+
#ret InterfaceDef
|
19
|
+
def _get_interface()
|
20
|
+
raise ::CORBA::NO_IMPLEMENT
|
21
|
+
#ifdef_obj = self.objref_._get_interface_def rescue CORBA::Exception.native2r($!)
|
22
|
+
#(ifdef_obj = CORBA::Native::InterfaceDefHelper.narrow(ifdef_obj) rescue CORBA::Exception.native2r($!)) unless ifdef_obj.nil?
|
23
|
+
end
|
24
|
+
|
25
|
+
# ::String logical_type_id
|
26
|
+
# ret boolean
|
27
|
+
def _is_a?(logical_type_id)
|
28
|
+
raise CORBA::INV_OBJREF.new if self._is_nil?()
|
29
|
+
## JacORB's LocalObjects throw NO_IMPLEMENT on _is_a?() and _ids() is also not always defined
|
30
|
+
return true if self.objref_.is_a?(CORBA::Native::LocalObject) &&
|
31
|
+
(!self.objref_.respond_to?(:_ids) || self.objref_._ids().include?(logical_type_id))
|
32
|
+
begin
|
33
|
+
self.objref_._is_a(logical_type_id)
|
34
|
+
rescue ::NativeException
|
35
|
+
CORBA::Exception.native2r($!)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
# ret ::String
|
40
|
+
def _repository_id()
|
41
|
+
raise CORBA::INV_OBJREF.new if self._is_nil?()
|
42
|
+
## if this object ref has already been narrowed
|
43
|
+
return self._interface_repository_id if self.respond_to?(:_interface_repository_id)
|
44
|
+
## ask the remote side
|
45
|
+
## have to do this ourselves since JacORB only resolves this locally (never calling remote)
|
46
|
+
req = self._request('_repository_id')
|
47
|
+
req.set_return_type(CORBA._tc_string)
|
48
|
+
return req.invoke
|
49
|
+
end
|
50
|
+
|
51
|
+
unless CORBA::Native::Portable::ObjectImpl.public_instance_methods.include?(:_get_component)
|
52
|
+
#ret ::CORBA::Object
|
53
|
+
def _get_component()
|
54
|
+
raise CORBA::INV_OBJREF.new if self._is_nil?()
|
55
|
+
## ask the remote side
|
56
|
+
## have to do this ourselves since JacORB does not support this remote method on Object
|
57
|
+
## and we can't use #invoke since this should work without narrowing
|
58
|
+
req = self._request('_component')
|
59
|
+
req.set_return_type(CORBA._tc_Object)
|
60
|
+
return req.invoke
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
#def PolicyType policy_type
|
65
|
+
# ret Policy
|
66
|
+
def _get_policy(policy_type)
|
67
|
+
raise ::CORBA::NO_IMPLEMENT
|
68
|
+
end
|
69
|
+
|
70
|
+
#PolicyList policies
|
71
|
+
#SetOverrideType set_add
|
72
|
+
#ret ::CORBA::Object
|
73
|
+
def _set_policy_overrides(policies, set_add )
|
74
|
+
raise ::CORBA::NO_IMPLEMENT
|
75
|
+
end
|
76
|
+
|
77
|
+
#int[] types
|
78
|
+
#ret PolicyList
|
79
|
+
def _get_policy_overrides(types)
|
80
|
+
raise ::CORBA::NO_IMPLEMENT
|
81
|
+
end
|
82
|
+
|
83
|
+
#PolicyList inconsistent_policies
|
84
|
+
#ret bool
|
85
|
+
def _validate_connection(inconsistent_policies)
|
86
|
+
raise ::CORBA::NO_IMPLEMENT
|
87
|
+
end
|
88
|
+
|
89
|
+
def _request(operation)
|
90
|
+
begin
|
91
|
+
CORBA::Request._wrap_native(self.objref_._request(operation.to_s), self)
|
92
|
+
rescue ::NativeException
|
93
|
+
CORBA::Exception.native2r($!)
|
94
|
+
end
|
95
|
+
end
|
96
|
+
|
97
|
+
end # Object
|
98
|
+
end # CORBA
|
99
|
+
end # R2CORBA
|