38 |
|
|
39 |
package gnu.CORBA; |
package gnu.CORBA; |
40 |
|
|
41 |
|
import gnu.CORBA.typecodes.FixedTypeCode; |
42 |
|
import gnu.CORBA.typecodes.GeneralTypeCode; |
43 |
|
import gnu.CORBA.typecodes.ArrayTypeCode; |
44 |
|
import gnu.CORBA.typecodes.PrimitiveTypeCode; |
45 |
|
import gnu.CORBA.typecodes.RecordTypeCode; |
46 |
|
import gnu.CORBA.typecodes.StringTypeCode; |
47 |
|
|
48 |
import org.omg.CORBA.TCKind; |
import org.omg.CORBA.TCKind; |
49 |
import org.omg.CORBA.TypeCode; |
import org.omg.CORBA.TypeCode; |
50 |
import org.omg.CORBA.TypeCodePackage.BadKind; |
import org.omg.CORBA.TypeCodePackage.BadKind; |
69 |
{ |
{ |
70 |
TCKind kind = TCKind.from_int(in.read_long()); |
TCKind kind = TCKind.from_int(in.read_long()); |
71 |
TypeCode rt; |
TypeCode rt; |
72 |
generalTypeCode g; |
GeneralTypeCode g; |
73 |
recordTypeCode r; |
RecordTypeCode r; |
74 |
recordTypeCode.Field f; |
RecordTypeCode.Field f; |
75 |
stringTypeCode s; |
StringTypeCode s; |
76 |
int n; |
int n; |
77 |
|
|
78 |
switch (kind.value()) |
switch (kind.value()) |
80 |
case TCKind._tk_sequence : |
case TCKind._tk_sequence : |
81 |
case TCKind._tk_array : |
case TCKind._tk_array : |
82 |
|
|
83 |
primitiveArrayTypeCode p = new primitiveArrayTypeCode(kind); |
ArrayTypeCode p = new ArrayTypeCode(kind); |
84 |
p.setLength(in.read_long()); |
p.setLength(in.read_long()); |
85 |
rt = p; |
rt = p; |
86 |
break; |
break; |
87 |
|
|
88 |
case TCKind._tk_string : |
case TCKind._tk_string : |
89 |
case TCKind._tk_wstring : |
case TCKind._tk_wstring : |
90 |
s = new stringTypeCode(kind); |
s = new StringTypeCode(kind); |
91 |
s.setLength(in.read_long()); |
s.setLength(in.read_long()); |
92 |
rt = s; |
rt = s; |
93 |
break; |
break; |
94 |
|
|
95 |
case TCKind._tk_fixed : |
case TCKind._tk_fixed : |
96 |
|
|
97 |
fixedTypeCode fx = new fixedTypeCode(); |
FixedTypeCode fx = new FixedTypeCode(); |
98 |
fx.setDigits(in.read_short()); |
fx.setDigits(in.read_short()); |
99 |
fx.setScale(in.read_short()); |
fx.setScale(in.read_short()); |
100 |
rt = fx; |
rt = fx; |
103 |
case TCKind._tk_objref : |
case TCKind._tk_objref : |
104 |
case TCKind._tk_native : |
case TCKind._tk_native : |
105 |
case TCKind._tk_abstract_interface : |
case TCKind._tk_abstract_interface : |
106 |
g = new generalTypeCode(kind); |
g = new GeneralTypeCode(kind); |
107 |
g.setId(in.read_string()); |
g.setId(in.read_string()); |
108 |
g.setName(in.read_string()); |
g.setName(in.read_string()); |
109 |
rt = g; |
rt = g; |
111 |
|
|
112 |
case TCKind._tk_alias : |
case TCKind._tk_alias : |
113 |
case TCKind._tk_value_box : |
case TCKind._tk_value_box : |
114 |
g = new generalTypeCode(kind); |
g = new GeneralTypeCode(kind); |
115 |
g.setId(in.read_string()); |
g.setId(in.read_string()); |
116 |
g.setName(in.read_string()); |
g.setName(in.read_string()); |
117 |
g.setContentType(in.read_TypeCode()); |
g.setContentType(in.read_TypeCode()); |
120 |
|
|
121 |
case TCKind._tk_struct : |
case TCKind._tk_struct : |
122 |
case TCKind._tk_except : |
case TCKind._tk_except : |
123 |
r = new recordTypeCode(kind); |
r = new RecordTypeCode(kind); |
124 |
r.setId(in.read_string()); |
r.setId(in.read_string()); |
125 |
r.setName(in.read_string()); |
r.setName(in.read_string()); |
126 |
|
|
136 |
break; |
break; |
137 |
|
|
138 |
case TCKind._tk_enum : |
case TCKind._tk_enum : |
139 |
r = new recordTypeCode(kind); |
r = new RecordTypeCode(kind); |
140 |
r.setId(in.read_string()); |
r.setId(in.read_string()); |
141 |
r.setName(in.read_string()); |
r.setName(in.read_string()); |
142 |
|
|
151 |
break; |
break; |
152 |
|
|
153 |
case TCKind._tk_union : |
case TCKind._tk_union : |
154 |
r = new recordTypeCode(kind); |
r = new RecordTypeCode(kind); |
155 |
r.setId(in.read_string()); |
r.setId(in.read_string()); |
156 |
r.setName(in.read_string()); |
r.setName(in.read_string()); |
157 |
r.setDiscriminator_type(in.read_TypeCode()); |
r.setDiscriminator_type(in.read_TypeCode()); |
171 |
break; |
break; |
172 |
|
|
173 |
case TCKind._tk_value : |
case TCKind._tk_value : |
174 |
r = new recordTypeCode(kind); |
r = new RecordTypeCode(kind); |
175 |
r.setId(in.read_string()); |
r.setId(in.read_string()); |
176 |
r.setName(in.read_string()); |
r.setName(in.read_string()); |
177 |
r.setTypeModifier(in.read_short()); |
r.setTypeModifier(in.read_short()); |
190 |
break; |
break; |
191 |
|
|
192 |
default : |
default : |
193 |
rt = new primitiveTypeCode(kind); |
rt = new PrimitiveTypeCode(kind); |
194 |
} |
} |
195 |
return rt; |
return rt; |
196 |
} |
} |