ref #10222 add supplemental data (cont.) + change labels for TaxonBaseDto
[cdmlib.git] / cdmlib-persistence / src / main / java / eu / etaxonomy / cdm / persistence / dao / reference / IReferenceDao.java
index 6412ecabfa7171c13f8878b6d6916946bb8f3620..420a7e91ac7ea04a7bf336afe8d97ce576b89ad1 100644 (file)
@@ -9,17 +9,23 @@
 package eu.etaxonomy.cdm.persistence.dao.reference;\r
 \r
 import java.util.List;\r
+import java.util.Set;\r
+import java.util.UUID;\r
+\r
+import org.hibernate.criterion.Criterion;\r
 \r
-import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;\r
 import eu.etaxonomy.cdm.model.reference.Reference;\r
+import eu.etaxonomy.cdm.model.reference.ReferenceType;\r
 import eu.etaxonomy.cdm.model.taxon.TaxonBase;\r
+import eu.etaxonomy.cdm.model.term.DefinedTermBase;\r
 import eu.etaxonomy.cdm.persistence.dao.common.IIdentifiableDao;\r
 import eu.etaxonomy.cdm.persistence.dao.common.ITitledDao;\r
+import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;\r
+import eu.etaxonomy.cdm.persistence.query.MatchMode;\r
 import eu.etaxonomy.cdm.persistence.query.OrderHint;\r
 \r
 /**\r
  * @author a.mueller\r
- *\r
  */\r
 public interface IReferenceDao extends IIdentifiableDao<Reference>, ITitledDao<Reference> {\r
 \r
@@ -54,7 +60,7 @@ public interface IReferenceDao extends IIdentifiableDao<Reference>, ITitledDao<R
        /**\r
         * searches for taxa using the following relations:\r
         * <ul>\r
-        * <li>taxon.name.nomenclaturalreference</li>\r
+        * <li>taxon.name.nomenclaturalSource.citation</li>\r
         * <li>taxon.descriptions.descriptionElement.sources.citation</li>\r
         * <li>taxon.descriptions.descriptionSources</li>\r
         * <li>taxon.name.descriptions.descriptionElement.sources</li>\r
@@ -68,4 +74,84 @@ public interface IReferenceDao extends IIdentifiableDao<Reference>, ITitledDao<R
         */\r
        public List<TaxonBase> listCoveredTaxa(Reference reference, boolean includeSubordinateReferences, List<OrderHint> orderHints, List<String> propertyPaths);\r
 \r
+       /**\r
+     * @param limit\r
+     * @param pattern\r
+     * @param refType\r
+     * @return\r
+     */\r
+    List<UuidAndTitleCache<Reference>> getUuidAndAbbrevTitleCache(Integer limit, String pattern, ReferenceType refType);\r
+\r
+    /**\r
+     * @param limit\r
+     * @param pattern\r
+     * @param refType\r
+     * @return\r
+     */\r
+    List<UuidAndTitleCache<Reference>> getUuidAndTitleCache(Integer limit, String pattern, ReferenceType refType);\r
+\r
+    /**\r
+     * @param identifier\r
+     * @param identifierType\r
+     * @param matchmode\r
+     * @param limit\r
+     * @return\r
+     */\r
+    List<Object[]> findByIdentifierAbbrev(String identifier, DefinedTermBase identifierType, MatchMode matchmode,\r
+            Integer limit);\r
+\r
+    /**\r
+     * @param limit\r
+     * @param pattern\r
+     * @param refType\r
+     * @return\r
+     */\r
+    List<UuidAndTitleCache<Reference>> getUuidAndAbbrevTitleCacheForAuthor(Integer limit, String pattern,\r
+            ReferenceType refType);\r
+\r
+    /**\r
+     * @param uuids\r
+     * @return\r
+     */\r
+    List<UuidAndTitleCache<Reference>> getUuidAndTitle(Set<UUID> uuids);\r
+\r
+    /**\r
+     * @param uuids\r
+     * @param refType\r
+     * @return\r
+     */\r
+    List<UuidAndTitleCache<Reference>> getUuidAndTitle(Set<UUID> uuids, ReferenceType refType);\r
+\r
+    /**\r
+     * @param clazz\r
+     * @param queryString\r
+     * @param matchmode\r
+     * @param criterion\r
+     * @param pageSize\r
+     * @param pageNumber\r
+     * @param orderHints\r
+     * @param propertyPaths\r
+     * @return\r
+     */\r
+    List<Reference> findByTitleAndAbbrevTitle(Class clazz, String queryString, MatchMode matchmode,\r
+            List<Criterion> criterion, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints,\r
+            List<String> propertyPaths);\r
+\r
+       List<UuidAndTitleCache<Reference>> getUuidAndAbbrevTitleCacheForAuthorID(Integer limit, Integer authorID,\r
+                       ReferenceType refType);\r
+\r
+    /**\r
+     * @param uuids\r
+     * @param refType\r
+     * @return\r
+     */\r
+    List<UuidAndTitleCache<Reference>> getUuidAndAbbrevTitle(Set<UUID> uuids, ReferenceType refType);\r
+\r
+    /**\r
+     * @param uuids\r
+     * @return\r
+     */\r
+    List<UuidAndTitleCache<Reference>> getUuidAndAbbrevTitle(Set<UUID> uuids);\r
+\r
+\r
 }\r