@Override
@Transactional
public CodeSystemEntity findBySystem(String system) {
CriteriaBuilder builder = em.getCriteriaBuilder();
CodeSystemEntity codeSystemEntity = null;
CriteriaQuery<CodeSystemEntity> criteria = builder.createQuery(CodeSystemEntity.class);
Root<CodeSystemEntity> root = criteria.from(CodeSystemEntity.class);
List<Predicate> predList = new LinkedList<Predicate>();
log.trace("FlushMode = "+em.getFlushMode());
log.trace("Entity Manager Properties = "+ em.getProperties().toString());
Predicate p = builder.equal(root.<String>get("codeSystemUri"),system);
predList.add(p);
Predicate[] predArray = new Predicate[predList.size()];
predList.toArray(predArray);
if (predList.size()>0)
{
log.trace("Found CodeSystem "+system);
criteria.select(root).where(predArray);
List<CodeSystemEntity> qryResults = em.createQuery(criteria).getResultList();
for (CodeSystemEntity cme : qryResults) {
codeSystemEntity = cme;
break;
}
}
if (codeSystemEntity == null) {
log.info("Not found adding CodeSystem = "+system);
codeSystemEntity = new CodeSystemEntity();
codeSystemEntity.setCodeSystemUri(system);
save(codeSystemEntity);
}
return codeSystemEntity;
}
CodeSystemDao.java 文件源码
java
阅读 33
收藏 0
点赞 0
评论 0
项目:careconnect-reference-implementation
作者:
评论列表
文章目录