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/Values.rb
CHANGED
@@ -1,173 +1,173 @@
|
|
1
|
-
#--------------------------------------------------------------------
|
2
|
-
# Values.rb - Java/JacORB CORBA Value and ValueBox 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
|
-
module R2CORBA
|
15
|
-
module CORBA
|
16
|
-
module AbstractValueBase
|
17
|
-
def self.included(mod)
|
18
|
-
mod.module_eval do
|
19
|
-
def self.===(obj)
|
20
|
-
obj.kind_of?(self)
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
module ValueBase
|
26
|
-
def self.included(mod)
|
27
|
-
mod.module_eval do
|
28
|
-
include CORBA::Native::Portable::StreamableValue unless self.include?(CORBA::Native::Portable::StreamableValue)
|
29
|
-
# this defines the following methods to be implemented
|
30
|
-
# String[] _truncatable_ids();
|
31
|
-
# TypeCode _type();
|
32
|
-
# void _read(org.omg.CORBA.portable.InputStream is);
|
33
|
-
# void _write(org.omg.CORBA.portable.OutputStream os);
|
34
|
-
include CORBA::AbstractValueBase unless self.include?(CORBA::AbstractValueBase)
|
35
|
-
|
36
|
-
def _truncatable_ids
|
37
|
-
self.class::TRUNCATABLE_IDS.to_java(:string)
|
38
|
-
end
|
39
|
-
|
40
|
-
def _type
|
41
|
-
self.class._tc.tc_ # return Java TypeCode here
|
42
|
-
end
|
43
|
-
|
44
|
-
def _read(jis)
|
45
|
-
do_unmarshal(CORBA::Portable::InputStream._wrap_native(jis))
|
46
|
-
end
|
47
|
-
|
48
|
-
def _write(jos)
|
49
|
-
do_marshal(CORBA::Portable::OutputStream._wrap_native(jos))
|
50
|
-
end
|
51
|
-
|
52
|
-
def kind_of?(mod)
|
53
|
-
if mod < CORBA::AbstractValueBase && mod.const_defined?(:Intf)
|
54
|
-
super(mod::Intf)
|
55
|
-
else
|
56
|
-
super
|
57
|
-
end
|
58
|
-
end
|
59
|
-
alias :is_a? :kind_of?
|
60
|
-
end
|
61
|
-
end
|
62
|
-
|
63
|
-
def _marshal_with(os, &block)
|
64
|
-
self.instance_eval(&block)
|
65
|
-
end
|
66
|
-
|
67
|
-
def _unmarshal_with(is, &block)
|
68
|
-
self.instance_eval(&block)
|
69
|
-
end
|
70
|
-
end # ValueBase
|
71
|
-
|
72
|
-
module Portable
|
73
|
-
class ValueFactoryBase
|
74
|
-
include CORBA::Native::Portable::ValueFactory
|
75
|
-
## defines: java.io.Serializable read_value(InputStream is)
|
76
|
-
|
77
|
-
def self.inherited(value_factory_base)
|
78
|
-
# value_factory_base is the <valuetype>Factory base class
|
79
|
-
# generated from IDL
|
80
|
-
value_factory_base.module_eval do
|
81
|
-
def self.value_id
|
82
|
-
self::VALUE_ID
|
83
|
-
end
|
84
|
-
|
85
|
-
# overload
|
86
|
-
def read_value(jis)
|
87
|
-
vt = self._create_default
|
88
|
-
vt._read(jis)
|
89
|
-
vt
|
90
|
-
end
|
91
|
-
end
|
92
|
-
end
|
93
|
-
end # ValueFactoryBase
|
94
|
-
|
95
|
-
module CustomValueBase
|
96
|
-
def self.included(mod)
|
97
|
-
mod.module_eval do
|
98
|
-
include CORBA::ValueBase unless self.include?(CORBA::ValueBase)
|
99
|
-
|
100
|
-
def do_marshal(os)
|
101
|
-
self.marshal(os)
|
102
|
-
end
|
103
|
-
|
104
|
-
def do_unmarshal(is)
|
105
|
-
self.unmarshal(is)
|
106
|
-
end
|
107
|
-
end
|
108
|
-
end
|
109
|
-
end # CustomValueBase
|
110
|
-
|
111
|
-
module BoxedValueBase
|
112
|
-
class FactoryBase < CORBA::Portable::ValueFactoryBase
|
113
|
-
## generic factory base
|
114
|
-
end
|
115
|
-
def self.included(mod)
|
116
|
-
mod.module_eval do
|
117
|
-
include CORBA::ValueBase unless self.include?(CORBA::ValueBase)
|
118
|
-
|
119
|
-
def _write(jos)
|
120
|
-
CORBA::Portable::OutputStream._wrap_native(jos).write_member(
|
121
|
-
self.class._tc.content_type.resolved_tc, self.value)
|
122
|
-
end
|
123
|
-
|
124
|
-
def _read(jis)
|
125
|
-
self.value = CORBA::Portable::InputStream._wrap_native(jis).read_member(
|
126
|
-
self.class._tc.content_type.resolved_tc)
|
127
|
-
end
|
128
|
-
|
129
|
-
self.const_set(:Factory, Class.new(CORBA::Portable::BoxedValueBase::FactoryBase))
|
130
|
-
self::Factory.class_eval(%Q{
|
131
|
-
@@_reg = false
|
132
|
-
def self._check_factory(jorb)
|
133
|
-
return if @@_reg
|
134
|
-
self.get_factory(jorb)
|
135
|
-
@@_reg = true
|
136
|
-
end
|
137
|
-
|
138
|
-
def self.value_id
|
139
|
-
#{self.name}::TRUNCATABLE_IDS.first
|
140
|
-
end
|
141
|
-
|
142
|
-
def _create_default
|
143
|
-
#{self.name}.new
|
144
|
-
end
|
145
|
-
})
|
146
|
-
|
147
|
-
self.const_set(:Helper, Class.new)
|
148
|
-
self::Helper.class_eval(%Q{
|
149
|
-
include CORBA::Native::Portable::BoxedValueHelper unless self.include?(CORBA::Native::Portable::BoxedValueHelper)
|
150
|
-
|
151
|
-
def get_id()
|
152
|
-
#{self.name}::TRUNCATABLE_IDS.first
|
153
|
-
end
|
154
|
-
|
155
|
-
def read_value(jis)
|
156
|
-
#{self.name}.new._read(jis)
|
157
|
-
end
|
158
|
-
|
159
|
-
def write_value(jos, value)
|
160
|
-
value._write(jos)
|
161
|
-
end
|
162
|
-
})
|
163
|
-
|
164
|
-
def self.boxedvalue_helper
|
165
|
-
@@helper ||= Helper.new
|
166
|
-
end
|
167
|
-
end
|
168
|
-
end
|
169
|
-
end
|
170
|
-
|
171
|
-
end # Portable
|
172
|
-
end # CORBA
|
173
|
-
end # R2CORBA
|
1
|
+
#--------------------------------------------------------------------
|
2
|
+
# Values.rb - Java/JacORB CORBA Value and ValueBox 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
|
+
module R2CORBA
|
15
|
+
module CORBA
|
16
|
+
module AbstractValueBase
|
17
|
+
def self.included(mod)
|
18
|
+
mod.module_eval do
|
19
|
+
def self.===(obj)
|
20
|
+
obj.kind_of?(self)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
module ValueBase
|
26
|
+
def self.included(mod)
|
27
|
+
mod.module_eval do
|
28
|
+
include CORBA::Native::Portable::StreamableValue unless self.include?(CORBA::Native::Portable::StreamableValue)
|
29
|
+
# this defines the following methods to be implemented
|
30
|
+
# String[] _truncatable_ids();
|
31
|
+
# TypeCode _type();
|
32
|
+
# void _read(org.omg.CORBA.portable.InputStream is);
|
33
|
+
# void _write(org.omg.CORBA.portable.OutputStream os);
|
34
|
+
include CORBA::AbstractValueBase unless self.include?(CORBA::AbstractValueBase)
|
35
|
+
|
36
|
+
def _truncatable_ids
|
37
|
+
self.class::TRUNCATABLE_IDS.to_java(:string)
|
38
|
+
end
|
39
|
+
|
40
|
+
def _type
|
41
|
+
self.class._tc.tc_ # return Java TypeCode here
|
42
|
+
end
|
43
|
+
|
44
|
+
def _read(jis)
|
45
|
+
do_unmarshal(CORBA::Portable::InputStream._wrap_native(jis))
|
46
|
+
end
|
47
|
+
|
48
|
+
def _write(jos)
|
49
|
+
do_marshal(CORBA::Portable::OutputStream._wrap_native(jos))
|
50
|
+
end
|
51
|
+
|
52
|
+
def kind_of?(mod)
|
53
|
+
if mod < CORBA::AbstractValueBase && mod.const_defined?(:Intf)
|
54
|
+
super(mod::Intf)
|
55
|
+
else
|
56
|
+
super
|
57
|
+
end
|
58
|
+
end
|
59
|
+
alias :is_a? :kind_of?
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
def _marshal_with(os, &block)
|
64
|
+
self.instance_eval(&block)
|
65
|
+
end
|
66
|
+
|
67
|
+
def _unmarshal_with(is, &block)
|
68
|
+
self.instance_eval(&block)
|
69
|
+
end
|
70
|
+
end # ValueBase
|
71
|
+
|
72
|
+
module Portable
|
73
|
+
class ValueFactoryBase
|
74
|
+
include CORBA::Native::Portable::ValueFactory
|
75
|
+
## defines: java.io.Serializable read_value(InputStream is)
|
76
|
+
|
77
|
+
def self.inherited(value_factory_base)
|
78
|
+
# value_factory_base is the <valuetype>Factory base class
|
79
|
+
# generated from IDL
|
80
|
+
value_factory_base.module_eval do
|
81
|
+
def self.value_id
|
82
|
+
self::VALUE_ID
|
83
|
+
end
|
84
|
+
|
85
|
+
# overload
|
86
|
+
def read_value(jis)
|
87
|
+
vt = self._create_default
|
88
|
+
vt._read(jis)
|
89
|
+
vt
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end # ValueFactoryBase
|
94
|
+
|
95
|
+
module CustomValueBase
|
96
|
+
def self.included(mod)
|
97
|
+
mod.module_eval do
|
98
|
+
include CORBA::ValueBase unless self.include?(CORBA::ValueBase)
|
99
|
+
|
100
|
+
def do_marshal(os)
|
101
|
+
self.marshal(os)
|
102
|
+
end
|
103
|
+
|
104
|
+
def do_unmarshal(is)
|
105
|
+
self.unmarshal(is)
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end # CustomValueBase
|
110
|
+
|
111
|
+
module BoxedValueBase
|
112
|
+
class FactoryBase < CORBA::Portable::ValueFactoryBase
|
113
|
+
## generic factory base
|
114
|
+
end
|
115
|
+
def self.included(mod)
|
116
|
+
mod.module_eval do
|
117
|
+
include CORBA::ValueBase unless self.include?(CORBA::ValueBase)
|
118
|
+
|
119
|
+
def _write(jos)
|
120
|
+
CORBA::Portable::OutputStream._wrap_native(jos).write_member(
|
121
|
+
self.class._tc.content_type.resolved_tc, self.value)
|
122
|
+
end
|
123
|
+
|
124
|
+
def _read(jis)
|
125
|
+
self.value = CORBA::Portable::InputStream._wrap_native(jis).read_member(
|
126
|
+
self.class._tc.content_type.resolved_tc)
|
127
|
+
end
|
128
|
+
|
129
|
+
self.const_set(:Factory, Class.new(CORBA::Portable::BoxedValueBase::FactoryBase))
|
130
|
+
self::Factory.class_eval(%Q{
|
131
|
+
@@_reg = false
|
132
|
+
def self._check_factory(jorb)
|
133
|
+
return if @@_reg
|
134
|
+
self.get_factory(jorb)
|
135
|
+
@@_reg = true
|
136
|
+
end
|
137
|
+
|
138
|
+
def self.value_id
|
139
|
+
#{self.name}::TRUNCATABLE_IDS.first
|
140
|
+
end
|
141
|
+
|
142
|
+
def _create_default
|
143
|
+
#{self.name}.new
|
144
|
+
end
|
145
|
+
})
|
146
|
+
|
147
|
+
self.const_set(:Helper, Class.new)
|
148
|
+
self::Helper.class_eval(%Q{
|
149
|
+
include CORBA::Native::Portable::BoxedValueHelper unless self.include?(CORBA::Native::Portable::BoxedValueHelper)
|
150
|
+
|
151
|
+
def get_id()
|
152
|
+
#{self.name}::TRUNCATABLE_IDS.first
|
153
|
+
end
|
154
|
+
|
155
|
+
def read_value(jis)
|
156
|
+
#{self.name}.new._read(jis)
|
157
|
+
end
|
158
|
+
|
159
|
+
def write_value(jos, value)
|
160
|
+
value._write(jos)
|
161
|
+
end
|
162
|
+
})
|
163
|
+
|
164
|
+
def self.boxedvalue_helper
|
165
|
+
@@helper ||= Helper.new
|
166
|
+
end
|
167
|
+
end
|
168
|
+
end
|
169
|
+
end
|
170
|
+
|
171
|
+
end # Portable
|
172
|
+
end # CORBA
|
173
|
+
end # R2CORBA
|
@@ -1,106 +1,106 @@
|
|
1
|
-
#--------------------------------------------------------------------
|
2
|
-
# exception.rb - Java/JacORB specific CORBA Exception 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
|
-
# import all java CORBA exceptions into the R2CORBA::CORBA namespace
|
15
|
-
module R2CORBA
|
16
|
-
module CORBA
|
17
|
-
class Exception
|
18
|
-
def self.native2r(jex)
|
19
|
-
if ::NativeException === jex
|
20
|
-
if jex.cause.is_a? Native::SystemException
|
21
|
-
SystemException._raise(jex)
|
22
|
-
elsif jex.cause.is_a? Native::UserException
|
23
|
-
UserException._raise(jex)
|
24
|
-
else
|
25
|
-
raise CORBA::InternalError.new(jex)
|
26
|
-
end
|
27
|
-
else
|
28
|
-
raise jex
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
class UserException
|
34
|
-
def self._raise(jex)
|
35
|
-
STDERR.puts "#{jex}\n#{jex.backtrace.join("\n")}" if $VERBOSE and (NativeException === jex)
|
36
|
-
if (NativeException === jex and jex.cause.is_a?(Native::UnknownUserException)) or jex.is_a?(Native::UnknownUserException)
|
37
|
-
java_ex = jex.is_a?(Native::UnknownUserException) ? jex : jex.cause
|
38
|
-
ex = Any.from_java(java_ex.except)
|
39
|
-
ex.set_backtrace(jex.backtrace) if NativeException === jex
|
40
|
-
raise ex
|
41
|
-
elsif (NativeException === jex and jex.cause.is_a?(Native::UserException)) or jex.is_a?(Native::UserException)
|
42
|
-
java_ex = jex.is_a?(Native::UserException) ? jex : jex.cause
|
43
|
-
exname = java_ex.class.name.split('::').last
|
44
|
-
tcs = CORBA::TypeCode.typecodes_for_name(exname) || []
|
45
|
-
extc = tcs.detect {|tc| tc.is_a?(TypeCode::Except) && tc.is_compatible?(java_ex)}
|
46
|
-
if extc
|
47
|
-
ex = extc.from_java(java_ex)
|
48
|
-
ex.set_backtrace(jex.backtrace) if NativeException === jex
|
49
|
-
raise ex
|
50
|
-
end
|
51
|
-
end
|
52
|
-
raise CORBA::UNKNOWN.new("#{jex}", 0, CORBA::COMPLETED_MAYBE)
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
class InternalError
|
57
|
-
def initialize(jex)
|
58
|
-
@ex_ = jex
|
59
|
-
super(@ex_.message)
|
60
|
-
self.set_backtrace(@ex_.backtrace)
|
61
|
-
end
|
62
|
-
end
|
63
|
-
|
64
|
-
class SystemException
|
65
|
-
def self._raise(jex)
|
66
|
-
raise ArgumentError unless (NativeException === jex and jex.cause.is_a?(Native::SystemException)) or jex.is_a?(Native::SystemException)
|
67
|
-
java_ex = jex.is_a?(Native::SystemException) ? jex : jex.cause
|
68
|
-
exname = java_ex.class.name.split('::').last
|
69
|
-
exklass = CORBA.const_get(exname.to_sym)
|
70
|
-
unless exklass
|
71
|
-
# define hitherto unknown CORBA system exception
|
72
|
-
CORBA.define_system_exception(exname)
|
73
|
-
CORBA.const_get(exname.to_sym) || InternalError
|
74
|
-
end
|
75
|
-
raise exklass.new(jex)
|
76
|
-
end
|
77
|
-
def initialize(*args)
|
78
|
-
if (NativeException === args.first and args.first.cause.is_a? Native::SystemException) or args.first.is_a?(Native::SystemException)
|
79
|
-
java_ex = args.first.is_a?(Native::SystemException) ? args.first : args.first.cause
|
80
|
-
super(java_ex.getMessage)
|
81
|
-
@minor = java_ex.minor
|
82
|
-
@completed = java_ex.completed.value
|
83
|
-
self.set_backtrace(args.first.backtrace) if NativeException === args.first
|
84
|
-
else
|
85
|
-
super(args.shift.to_s)
|
86
|
-
@minor, @completed = (args + [0,0][args.size..2])
|
87
|
-
end
|
88
|
-
end
|
89
|
-
end
|
90
|
-
end # CORBA
|
91
|
-
end # R2CORBA
|
92
|
-
|
93
|
-
# extend Ruby wrapper for Native java exceptions
|
94
|
-
class NativeException
|
95
|
-
alias method_missing_corba_backup method_missing
|
96
|
-
def method_missing(method, *args)
|
97
|
-
if self.cause.is_a?(R2CORBA::CORBA::Native::SystemException) and args.empty?
|
98
|
-
return self.cause.minor if method == :minor
|
99
|
-
return self.cause.completed.value if method == :completed
|
100
|
-
return self.cause.getMessage if method == :reason
|
101
|
-
elsif self.cause.is_a? R2CORBA::CORBA::Native::UserException
|
102
|
-
return self.cause.send(method, *args)
|
103
|
-
end
|
104
|
-
self.method_missing_corba_backup
|
105
|
-
end
|
106
|
-
end
|
1
|
+
#--------------------------------------------------------------------
|
2
|
+
# exception.rb - Java/JacORB specific CORBA Exception 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
|
+
# import all java CORBA exceptions into the R2CORBA::CORBA namespace
|
15
|
+
module R2CORBA
|
16
|
+
module CORBA
|
17
|
+
class Exception
|
18
|
+
def self.native2r(jex)
|
19
|
+
if ::NativeException === jex
|
20
|
+
if jex.cause.is_a? Native::SystemException
|
21
|
+
SystemException._raise(jex)
|
22
|
+
elsif jex.cause.is_a? Native::UserException
|
23
|
+
UserException._raise(jex)
|
24
|
+
else
|
25
|
+
raise CORBA::InternalError.new(jex)
|
26
|
+
end
|
27
|
+
else
|
28
|
+
raise jex
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
class UserException
|
34
|
+
def self._raise(jex)
|
35
|
+
STDERR.puts "#{jex}\n#{jex.backtrace.join("\n")}" if $VERBOSE and (NativeException === jex)
|
36
|
+
if (NativeException === jex and jex.cause.is_a?(Native::UnknownUserException)) or jex.is_a?(Native::UnknownUserException)
|
37
|
+
java_ex = jex.is_a?(Native::UnknownUserException) ? jex : jex.cause
|
38
|
+
ex = Any.from_java(java_ex.except)
|
39
|
+
ex.set_backtrace(jex.backtrace) if NativeException === jex
|
40
|
+
raise ex
|
41
|
+
elsif (NativeException === jex and jex.cause.is_a?(Native::UserException)) or jex.is_a?(Native::UserException)
|
42
|
+
java_ex = jex.is_a?(Native::UserException) ? jex : jex.cause
|
43
|
+
exname = java_ex.class.name.split('::').last
|
44
|
+
tcs = CORBA::TypeCode.typecodes_for_name(exname) || []
|
45
|
+
extc = tcs.detect {|tc| tc.is_a?(TypeCode::Except) && tc.is_compatible?(java_ex)}
|
46
|
+
if extc
|
47
|
+
ex = extc.from_java(java_ex)
|
48
|
+
ex.set_backtrace(jex.backtrace) if NativeException === jex
|
49
|
+
raise ex
|
50
|
+
end
|
51
|
+
end
|
52
|
+
raise CORBA::UNKNOWN.new("#{jex}", 0, CORBA::COMPLETED_MAYBE)
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
class InternalError
|
57
|
+
def initialize(jex)
|
58
|
+
@ex_ = jex
|
59
|
+
super(@ex_.message)
|
60
|
+
self.set_backtrace(@ex_.backtrace)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
class SystemException
|
65
|
+
def self._raise(jex)
|
66
|
+
raise ArgumentError unless (NativeException === jex and jex.cause.is_a?(Native::SystemException)) or jex.is_a?(Native::SystemException)
|
67
|
+
java_ex = jex.is_a?(Native::SystemException) ? jex : jex.cause
|
68
|
+
exname = java_ex.class.name.split('::').last
|
69
|
+
exklass = CORBA.const_get(exname.to_sym)
|
70
|
+
unless exklass
|
71
|
+
# define hitherto unknown CORBA system exception
|
72
|
+
CORBA.define_system_exception(exname)
|
73
|
+
CORBA.const_get(exname.to_sym) || InternalError
|
74
|
+
end
|
75
|
+
raise exklass.new(jex)
|
76
|
+
end
|
77
|
+
def initialize(*args)
|
78
|
+
if (NativeException === args.first and args.first.cause.is_a? Native::SystemException) or args.first.is_a?(Native::SystemException)
|
79
|
+
java_ex = args.first.is_a?(Native::SystemException) ? args.first : args.first.cause
|
80
|
+
super(java_ex.getMessage)
|
81
|
+
@minor = java_ex.minor
|
82
|
+
@completed = java_ex.completed.value
|
83
|
+
self.set_backtrace(args.first.backtrace) if NativeException === args.first
|
84
|
+
else
|
85
|
+
super(args.shift.to_s)
|
86
|
+
@minor, @completed = (args + [0,0][args.size..2])
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end # CORBA
|
91
|
+
end # R2CORBA
|
92
|
+
|
93
|
+
# extend Ruby wrapper for Native java exceptions
|
94
|
+
class NativeException
|
95
|
+
alias method_missing_corba_backup method_missing
|
96
|
+
def method_missing(method, *args)
|
97
|
+
if self.cause.is_a?(R2CORBA::CORBA::Native::SystemException) and args.empty?
|
98
|
+
return self.cause.minor if method == :minor
|
99
|
+
return self.cause.completed.value if method == :completed
|
100
|
+
return self.cause.getMessage if method == :reason
|
101
|
+
elsif self.cause.is_a? R2CORBA::CORBA::Native::UserException
|
102
|
+
return self.cause.send(method, *args)
|
103
|
+
end
|
104
|
+
self.method_missing_corba_backup
|
105
|
+
end
|
106
|
+
end
|