340 |
m_parameter_buffer.setCodeSet(cxCodeSet.negotiate(ior.Internet.CodeSets)); |
m_parameter_buffer.setCodeSet(cxCodeSet.negotiate(ior.Internet.CodeSets)); |
341 |
m_parameter_buffer.setOrb(orb); |
m_parameter_buffer.setOrb(orb); |
342 |
m_parameter_buffer.setBigEndian(Big_endian); |
m_parameter_buffer.setBigEndian(Big_endian); |
343 |
|
|
344 |
|
// For the old iiop versions, it is important to set the size |
345 |
|
// correctly. |
346 |
|
if (ior.Internet.version.until_inclusive(1, 1)) |
347 |
|
{ |
348 |
|
cdrBufOutput measure = new cdrBufOutput(); |
349 |
|
measure.setOffset(12); |
350 |
|
if (m_rqh == null) |
351 |
|
m_rqh = new gnu.CORBA.GIOP.v1_0.RequestHeader(); |
352 |
|
m_rqh.operation = m_operation; |
353 |
|
m_rqh.object_key = ior.key; |
354 |
|
m_rqh.write(measure); |
355 |
|
m_parameter_buffer.setOffset(12 + measure.buffer.size()); |
356 |
|
} |
357 |
|
|
358 |
return m_parameter_buffer; |
return m_parameter_buffer; |
359 |
} |
} |
360 |
|
|
753 |
// This also sets the stream encoding to the encoding, specified |
// This also sets the stream encoding to the encoding, specified |
754 |
// in the header. |
// in the header. |
755 |
rh.write(request_part); |
rh.write(request_part); |
756 |
|
|
757 |
if (m_args != null && m_args.count() > 0) |
if (m_args != null && m_args.count() > 0) |
758 |
{ |
{ |
759 |
write_parameters(header, request_part); |
write_parameters(header, request_part); |