if (parameters!=null) {
List patamList = new LinkedList(Arrays.asList(parameters));
Iterator paramsIter = patamList.iterator();
for (int i = 0; i < parameterTypeList.size(); i++) {
Member member = (Member) parameterTypeList.get(i);
DataType type = member.getDataType();
Object value = null;
String mode = member.getMode();
if (mode.equals(Member.MODE_IN)) {
arg = request.add_in_arg();
value = paramsIter.next();
}else if (mode.equals(Member.MODE_INOUT)) {
arg = request.add_inout_arg();
value = paramsIter.next();
} else if (mode.equals(Member.MODE_OUT)) {
arg = request.add_out_arg();
value = CorbaUtil.getEmptyValue(type);
}
memArgs.add(arg);
CorbaUtil.insertValue(arg, type, value);
}
}
// Set return type
DataType returnType = operation.getReturnType();
if (returnType!=null) {
TypeCode typeCode = returnType.getTypeCode();
request.set_return_type(typeCode);
}
// Set exceptions
List exceptions = operation.getRaises();