Generalize term service method listByTermType()
authorPatrick Plitzner <p.plitzner@bgbm.org>
Wed, 9 Dec 2015 07:59:03 +0000 (08:59 +0100)
committerPatrick Plitzner <p.plitzner@bgbm.org>
Wed, 9 Dec 2015 07:59:03 +0000 (08:59 +0100)
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/common/IDefinedTermDao.java
cdmlib-persistence/src/main/java/eu/etaxonomy/cdm/persistence/dao/hibernate/common/DefinedTermDaoImpl.java
cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/ITermService.java
cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/TermServiceImpl.java

index 73110b84bdb8433d43f175f488a15640791d839a..d2d6f157a682dd23c09bd9ce49dfc151a6024088 100644 (file)
@@ -173,7 +173,7 @@ public interface IDefinedTermDao extends IIdentifiableDao<DefinedTermBase>, ITit
         * @param propertyPaths
         * @return a list containing the terms
         */
         * @param propertyPaths
         * @return a list containing the terms
         */
-       public List<DefinedTermBase<?>> listByTermType(TermType termType, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths);
+       public <T extends DefinedTermBase> List<T> listByTermType(TermType termType, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths);
 
        public <TERM extends DefinedTermBase> List<TERM> listByTermClass(Class<TERM> clazz, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths);
 
 
        public <TERM extends DefinedTermBase> List<TERM> listByTermClass(Class<TERM> clazz, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths);
 
index 893f4ced52273578133719eb3f588a78332d00ac..c0952676f86409ede34c6ba67996a7bf3b90edd2 100644 (file)
@@ -648,7 +648,7 @@ public class DefinedTermDaoImpl extends IdentifiableDaoBase<DefinedTermBase> imp
         * @see eu.etaxonomy.cdm.persistence.dao.common.IDefinedTermDao#listByTermType(eu.etaxonomy.cdm.model.common.TermType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
         */
        @Override
         * @see eu.etaxonomy.cdm.persistence.dao.common.IDefinedTermDao#listByTermType(eu.etaxonomy.cdm.model.common.TermType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
         */
        @Override
-       public List<DefinedTermBase<?>> listByTermType(TermType termType, Integer limit, Integer start,
+       public <T extends DefinedTermBase> List<T> listByTermType(TermType termType, Integer limit, Integer start,
                List<OrderHint> orderHints, List<String> propertyPaths) {
            Query query = getSession().createQuery("select term from DefinedTermBase term where term.termType = :termType");
            query.setParameter("termType", termType);
                List<OrderHint> orderHints, List<String> propertyPaths) {
            Query query = getSession().createQuery("select term from DefinedTermBase term where term.termType = :termType");
            query.setParameter("termType", termType);
index 0d0e0853756044adb025d3003b5fbd9ff890b3b3..028bfc71919e36d37103ae5f377f166b7d65e0cb 100644 (file)
@@ -136,7 +136,7 @@ public interface ITermService extends IIdentifiableEntityService<DefinedTermBase
      * @param propertyPaths
      * @return a list containing the terms
      */
      * @param propertyPaths
      * @return a list containing the terms
      */
-    public List<DefinedTermBase<?>> listByTermType(TermType termType, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths);
+    public <T extends DefinedTermBase> List<T> listByTermType(TermType termType, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths);
 
     /**
      * Delete the given term according to the given delete configuration.
 
     /**
      * Delete the given term according to the given delete configuration.
index 6ed5b21bb020586363a2fdb8bbd756517fe7a149..ab79534fd3eff37adc1bb7b36924f7682a572183 100644 (file)
@@ -88,7 +88,7 @@ public class TermServiceImpl extends IdentifiableServiceBase<DefinedTermBase,IDe
         * @see eu.etaxonomy.cdm.api.service.ITermService#listByTermType(eu.etaxonomy.cdm.model.common.TermType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
         */
        @Override
         * @see eu.etaxonomy.cdm.api.service.ITermService#listByTermType(eu.etaxonomy.cdm.model.common.TermType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
         */
        @Override
-       public List<DefinedTermBase<?>> listByTermType(TermType termType, Integer limit, Integer start,
+       public <T extends DefinedTermBase> List<T> listByTermType(TermType termType, Integer limit, Integer start,
                List<OrderHint> orderHints, List<String> propertyPaths) {
            return dao.listByTermType(termType, limit, start, orderHints, propertyPaths);
        }
                List<OrderHint> orderHints, List<String> propertyPaths) {
            return dao.listByTermType(termType, limit, start, orderHints, propertyPaths);
        }