/**
* Load sample metadata from the database for all files, corresponding the given reference ID.
*
* @param vcfFileId {@code long} reference ID for which files samples were saved.
* @return {@code Map<Long, List<Sample>>} with file IDs for giver reference ID as keys, and with
* lists of samples, corresponding this file IDs as values.
*/
@Transactional(propagation = Propagation.MANDATORY)
public Map<Long, List<VcfSample>> loadSamplesForFilesByReference(long vcfFileId) {
Map<Long, List<VcfSample>> sampleFileMap = new HashMap<>();
getJdbcTemplate().query(loadSamplesForFilesByReferenceIdQuery, rs -> {
Long fileId = rs.getLong(SampleParameters.VCF_ID.name());
if (!sampleFileMap.containsKey(fileId)) {
sampleFileMap.put(fileId, new ArrayList<>());
}
VcfSample sample = new VcfSample();
sample.setId(rs.getLong(SampleParameters.VCF_SAMPLE_ID.name()));
sample.setName(rs.getString(SampleParameters.SAMPLE_NAME.name()));
sample.setIndex(rs.getInt(SampleParameters.ORDER_INDEX.name()));
sampleFileMap.get(fileId).add(sample);
}, vcfFileId);
return sampleFileMap;
}
VcfFileDao.java 文件源码
java
阅读 26
收藏 0
点赞 0
评论 0
项目:NGB-master
作者:
评论列表
文章目录