private void addToObjectPartList(ObjectPartList serializedObjs, Object res,
CollectionType collectionType, boolean lastChunk, ServerConnection servConn,
boolean isStructs, final SecurityService securityService) throws IOException {
if (isStructs && (res instanceof Struct)) {
Object[] values = ((Struct) res).getFieldValues();
ObjectPartList serializedValueObjs = new ObjectPartList(values.length, false);
for (Object value : values) {
addObjectToPartList(serializedValueObjs, null, value, securityService);
}
serializedObjs.addPart(null, serializedValueObjs, ObjectPartList.OBJECT, null);
} else if (res instanceof Object[]) {
Object[] values = ((Object[]) res);
ObjectPartList serializedValueObjs = new ObjectPartList(values.length, false);
for (int i = 0; i < values.length; i += 2) {
Object key = values[i];
Object value = values[i + 1];
addObjectToPartList(serializedValueObjs, key, value, securityService);
}
serializedObjs.addPart(null, serializedValueObjs, ObjectPartList.OBJECT, null);
} else {
addObjectToPartList(serializedObjs, null, res, securityService);
}
}