}
protected Map<String, Object> generateColumnToValueMap(RowItem item) {
Map<String, Object> columnToValueMap = new HashMap<String, Object>();
for (Object id : item.getItemPropertyIds()) {
ColumnProperty cp = (ColumnProperty) item.getItemProperty(id);
/* Prevent "rownum" usage as a column name if MSSQL or ORACLE */
if ((this instanceof MSSQLGenerator || this instanceof OracleGenerator)
&& cp.getPropertyId().equalsIgnoreCase("rownum")) {
continue;
}
Object value = cp.getValue() == null ? null : cp.getValue();
/* Only include properties whose read-only status can be altered */
if (cp.isReadOnlyChangeAllowed() && !cp.isVersionColumn()) {
columnToValueMap.put(cp.getPropertyId(), value);
}
}
return columnToValueMap;
}