private void populateCollectionFromTableRow(Collection c, TableRow row) { Bitstream logo = null; Item templateItem = null; // Get the logo bitstream if (!row.isColumnNull("logo_bitstream_id")) { int id = row.getIntColumn("logo_bitstream_id"); logo = bitstreamDAO.retrieve(id); } // Get the template item if (!row.isColumnNull("template_item_id")) { templateItem = itemDAO.retrieve(row.getIntColumn("template_item_id")); } UUID uuid = UUID.fromString(row.getStringColumn("uuid")); c.setIdentifier(new ObjectIdentifier(uuid)); c.setLogoBitstream(logo); c.setTemplateItem(templateItem); c.setWorkflowGroup(1, groupFromColumn(row, "workflow_step_1")); c.setWorkflowGroup(2, groupFromColumn(row, "workflow_step_2")); c.setWorkflowGroup(3, groupFromColumn(row, "workflow_step_3")); c.setSubmitters(groupFromColumn(row, "submitter")); c.setAdministrators(groupFromColumn(row, "admin")); for (CollectionMetadataField field : CollectionMetadataField.values()) { String value = row.getStringColumn(field.toString()); if (value == null) { c.setMetadata(field.toString(), ""); } else { c.setMetadata(field.toString(), value); } } }