Revision e5fa5ee8
Added by Andreas Müller over 7 years ago
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/taxon/ClassificationDaoHibernateImpl.java | ||
---|---|---|
319 | 319 |
} |
320 | 320 |
|
321 | 321 |
|
322 |
/** |
|
323 |
* {@inheritDoc} |
|
324 |
*/ |
|
325 |
@Override |
|
326 |
public Map<UUID, UUID> getTaxonNodeUuidByTaxonUuid(UUID classificationUuid, List<UUID> taxonUuids) { |
|
327 |
String hql = " SELECT t.uuid, tn.uuid " |
|
328 |
+ " FROM Taxon t JOIN t.taxonNodes tn " |
|
329 |
+ " WHERE (1=1)" |
|
330 |
+ " AND tn.classification.uuid = :classificationUuid " |
|
331 |
+ " AND t.uuid IN (:taxonUuids) " |
|
332 |
; |
|
333 |
Query query = getSession().createQuery(hql); |
|
334 |
query.setParameter("classificationUuid", classificationUuid); |
|
335 |
query.setParameterList("taxonUuids", taxonUuids); |
|
336 |
|
|
337 |
Map<UUID, UUID> result = new HashMap<>(); |
|
338 |
@SuppressWarnings("unchecked") |
|
339 |
List<Object[]> list = query.list(); |
|
340 |
for (Object[] o : list){ |
|
341 |
result.put((UUID)o[0], (UUID)o[1]); |
|
342 |
} |
|
343 |
return result; |
|
344 |
} |
|
345 |
|
|
346 |
|
|
347 |
|
|
322 | 348 |
} |
Also available in: Unified diff
ref #6066 add getChildNodes to classification service