@Qualifier("descriptionDaoImpl")\r
public class DescriptionDaoImpl extends IdentifiableDaoBase<DescriptionBase> implements IDescriptionDao{\r
\r
- @SuppressWarnings("unused")\r
private static final Logger logger = Logger.getLogger(DescriptionDaoImpl.class);\r
\r
public DescriptionDaoImpl() {\r
indexedClasses[2] = SpecimenDescription.class;\r
}\r
\r
+// @Override //Override for testing\r
+// public DescriptionBase load(UUID uuid, List<String> propertyPaths){\r
+// DescriptionBase bean = findByUuid(uuid);\r
+// if(bean == null){\r
+// return bean;\r
+// }\r
+// defaultBeanInitializer.initialize(bean, propertyPaths);\r
+//\r
+// return bean;\r
+// }\r
+\r
@Override\r
public int countDescriptionByDistribution(Set<NamedArea> namedAreas, PresenceAbsenceTermBase status) {\r
checkNotInPriorView("DescriptionDaoImpl.countDescriptionByDistribution(Set<NamedArea> namedAreas, PresenceAbsenceTermBase status)");\r
\r
@Override\r
public <T extends DescriptionElementBase> List<T> getDescriptionElementForTaxon(\r
- Taxon taxon, Set<Feature> features,\r
+ UUID taxonUuid, Set<Feature> features,\r
Class<T> type, Integer pageSize,\r
Integer pageNumber, List<String> propertyPaths) {\r
\r
- Query query = prepareGetDescriptionElementForTaxon(taxon, features, type, pageSize, pageNumber, false);\r
+ Query query = prepareGetDescriptionElementForTaxon(taxonUuid, features, type, pageSize, pageNumber, false);\r
\r
+ if (logger.isDebugEnabled()){logger.debug(" dao: get list ...");}\r
List<T> results = query.list();\r
+ if (logger.isDebugEnabled()){logger.debug(" dao: initialize ...");}\r
defaultBeanInitializer.initializeAll(results, propertyPaths);\r
-\r
+ if (logger.isDebugEnabled()){logger.debug(" dao: initialize - DONE");}\r
return results;\r
}\r
\r
@Override\r
public <T extends DescriptionElementBase> long countDescriptionElementForTaxon(\r
- Taxon taxon, Set<Feature> features, Class<T> type) {\r
+ UUID taxonUuid, Set<Feature> features, Class<T> type) {\r
\r
- Query query = prepareGetDescriptionElementForTaxon(taxon, features, type, null, null, true);\r
+ Query query = prepareGetDescriptionElementForTaxon(taxonUuid, features, type, null, null, true);\r
\r
return (Long)query.uniqueResult();\r
}\r
* @param pageNumber\r
* @return\r
*/\r
- private <T extends DescriptionElementBase> Query prepareGetDescriptionElementForTaxon(Taxon taxon,\r
+ private <T extends DescriptionElementBase> Query prepareGetDescriptionElementForTaxon(UUID taxonUuid,\r
Set<Feature> features, Class<T> type, Integer pageSize, Integer pageNumber, boolean asCountQuery) {\r
\r
String listOrCount;\r
String queryString = "select " + listOrCount +\r
" from TaxonDescription as td" +\r
" left join td.descriptionElements as de" +\r
- " where td.taxon = :taxon ";\r
+ " where td.taxon.uuid = :taxon_uuid ";\r
\r
if(type != null){\r
queryString += " and de.class = :type";\r
// System.out.println(queryString);\r
Query query = getSession().createQuery(queryString);\r
\r
- query.setParameter("taxon", taxon);\r
+ query.setParameter("taxon_uuid", taxonUuid);\r
if(type != null){\r
query.setParameter("type", type.getSimpleName());\r
}\r