* @param entity
*/
@SuppressWarnings("rawtypes")
protected void preMarshallIndividualEntity(Object entity) {
if (entity instanceof ReportQueryResultListItem) {
ReportQueryResultListItem item = (ReportQueryResultListItem) entity;
List<JAXBElement> fields = item.getFields();
for (int i = 0; i < fields.size(); i++) {
// one or more fields in the MultiResultQueryListItem might be a domain object,
// so, we need to set the relationshipInfo for those domain objects.
setRelationshipInfo(fields.get(i).getValue());
}
} else if (entity instanceof SingleResultQueryList) {
SingleResultQueryList item = (SingleResultQueryList) entity;
List<JAXBElement> fields = item.getFields();
for (int i = 0; i < fields.size(); i++) {
// one or more fields in the SingleResultQueryList might be a domain object,
// so, we need to set the relationshipInfo for those domain objects.
setRelationshipInfo(fields.get(i).getValue());
}
} else if (entity instanceof ReportQueryResultList) {
ReportQueryResultList list = (ReportQueryResultList) entity;
List<ReportQueryResultListItem> items = list.getItems();
for (int i = 0; i < items.size(); i++) {
ReportQueryResultListItem item = items.get(i);
List<JAXBElement> fields = item.getFields();
for (int index = 0; index < fields.size(); index++) {
// one or more fields in the MultiResultQueryList might be a domain object,
// so, we need to set the relationshipInfo for those domain objects.
setRelationshipInfo(fields.get(index).getValue());
}
}
} else if (entity instanceof ReadAllQueryResultCollection) {
ReadAllQueryResultCollection list = (ReadAllQueryResultCollection) entity;
List<Object> items = list.getItems();
if ((items != null) && (!items.isEmpty())) {
for (int i = 0; i < items.size(); i++) {
Object item = items.get(i);
setRelationshipInfo(item);
}
}
} else if (entity instanceof ReportQueryResultCollection) {
ReportQueryResultCollection list = (ReportQueryResultCollection) entity;
List<ReportQueryResultListItem> items = list.getItems();
if ((items != null) && (!items.isEmpty())) {
for (int i = 0; i < items.size(); i++) {
ReportQueryResultListItem item = items.get(i);
setRelationshipInfo(item);
}
}
} else {
setRelationshipInfo(entity);