package edu.harvard.i2b2.crc.dao.pdo; import java.util.Date; import java.sql.ResultSet; import java.sql.SQLException; import java.util.List; import edu.harvard.i2b2.common.util.jaxb.DTOFactory; import edu.harvard.i2b2.crc.datavo.pdo.ParamType; public class ParamTypeValueBuilder { private DTOFactory dtoFactory = new DTOFactory(); public List<ParamType> buildParamType(ResultSet resultSet, MetadataDao.TableMetaData tableMetaData) { return null; } public ParamType buildParamType(ParamType metaParamType,String fieldPrefix, String lookupFieldSuffix, ResultSet rowSet) throws SQLException { ParamType paramType = new ParamType(); paramType.setColumn(metaParamType.getColumn()); paramType.setColumnDescriptor(metaParamType.getColumnDescriptor()); if (lookupFieldSuffix != null && !metaParamType.getType().startsWith("defaulted:")) { paramType.setName(rowSet.getString(metaParamType.getColumn() + lookupFieldSuffix )); } if (metaParamType.getType().startsWith("defaulted:")) { paramType.setType(metaParamType.getType().substring(10)); } else { paramType.setType(metaParamType.getType()); } //paramType.setValue(rowSet.getString(fieldPrefix + metaParamType.getColumn())); if (metaParamType.getType().equalsIgnoreCase("dateTime")) { Date paramDate = rowSet.getTimestamp(fieldPrefix + metaParamType.getColumn()); if (paramDate != null) { paramType.setValue(dtoFactory.getXMLGregorianCalendar(paramDate.getTime()).toXMLFormat()); } } else { paramType.setValue(rowSet.getString(fieldPrefix + metaParamType.getColumn())); } return paramType; } }