X-Git-Url: https://dev.e-taxonomy.eu/gitweb/cdmlib.git/blobdiff_plain/71c24879f565236e858f6550ffaa874160d9eac2..0440906be2a8c3f4699fd6ffa246a9b65ccb42ac:/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/description/DescriptionDaoImpl.java diff --git a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/description/DescriptionDaoImpl.java b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/description/DescriptionDaoImpl.java index 99bee3f4e4..7b5029ee74 100644 --- a/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/description/DescriptionDaoImpl.java +++ b/cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/description/DescriptionDaoImpl.java @@ -52,7 +52,7 @@ import eu.etaxonomy.cdm.persistence.query.OrderHint; @Qualifier("descriptionDaoImpl") public class DescriptionDaoImpl extends IdentifiableDaoBase implements IDescriptionDao{ - private static final Logger logger = Logger.getLogger(DescriptionDaoImpl.class); + private static final Logger logger = Logger.getLogger(DescriptionDaoImpl.class); public DescriptionDaoImpl() { super(DescriptionBase.class); @@ -62,6 +62,17 @@ public class DescriptionDaoImpl extends IdentifiableDaoBase imp indexedClasses[2] = SpecimenDescription.class; } +// @Override //Override for testing +// public DescriptionBase load(UUID uuid, List propertyPaths){ +// DescriptionBase bean = findByUuid(uuid); +// if(bean == null){ +// return bean; +// } +// defaultBeanInitializer.initialize(bean, propertyPaths); +// +// return bean; +// } + @Override public int countDescriptionByDistribution(Set namedAreas, PresenceAbsenceTermBase status) { checkNotInPriorView("DescriptionDaoImpl.countDescriptionByDistribution(Set namedAreas, PresenceAbsenceTermBase status)"); @@ -677,11 +688,11 @@ public class DescriptionDaoImpl extends IdentifiableDaoBase imp @Override public List getDescriptionElementForTaxon( - Taxon taxon, Set features, + UUID taxonUuid, Set features, Class type, Integer pageSize, Integer pageNumber, List propertyPaths) { - Query query = prepareGetDescriptionElementForTaxon(taxon, features, type, pageSize, pageNumber, false); + Query query = prepareGetDescriptionElementForTaxon(taxonUuid, features, type, pageSize, pageNumber, false); if (logger.isDebugEnabled()){logger.debug(" dao: get list ...");} List results = query.list(); @@ -693,9 +704,9 @@ public class DescriptionDaoImpl extends IdentifiableDaoBase imp @Override public long countDescriptionElementForTaxon( - Taxon taxon, Set features, Class type) { + UUID taxonUuid, Set features, Class type) { - Query query = prepareGetDescriptionElementForTaxon(taxon, features, type, null, null, true); + Query query = prepareGetDescriptionElementForTaxon(taxonUuid, features, type, null, null, true); return (Long)query.uniqueResult(); } @@ -708,7 +719,7 @@ public class DescriptionDaoImpl extends IdentifiableDaoBase imp * @param pageNumber * @return */ - private Query prepareGetDescriptionElementForTaxon(Taxon taxon, + private Query prepareGetDescriptionElementForTaxon(UUID taxonUuid, Set features, Class type, Integer pageSize, Integer pageNumber, boolean asCountQuery) { String listOrCount; @@ -720,7 +731,7 @@ public class DescriptionDaoImpl extends IdentifiableDaoBase imp String queryString = "select " + listOrCount + " from TaxonDescription as td" + " left join td.descriptionElements as de" + - " where td.taxon = :taxon "; + " where td.taxon.uuid = :taxon_uuid "; if(type != null){ queryString += " and de.class = :type"; @@ -731,7 +742,7 @@ public class DescriptionDaoImpl extends IdentifiableDaoBase imp // System.out.println(queryString); Query query = getSession().createQuery(queryString); - query.setParameter("taxon", taxon); + query.setParameter("taxon_uuid", taxonUuid); if(type != null){ query.setParameter("type", type.getSimpleName()); }