Revision ece0f9f5
Added by Andreas Müller over 2 years ago
cdmlib-commons/src/main/java/eu/etaxonomy/cdm/common/CdmUtils.java | ||
---|---|---|
554 | 554 |
public static String userFriendlyClassName(Class<?> clazz){ |
555 | 555 |
return userFriendlyCamelCase(clazz.getSimpleName()); |
556 | 556 |
} |
557 |
|
|
558 |
public static <T extends Object> List<T> removeIdentical(List<T> list) { |
|
559 |
if (list == null){ |
|
560 |
return null; |
|
561 |
} |
|
562 |
List<T> result = new ArrayList<>(); |
|
563 |
for(T obj : list){ |
|
564 |
if (result.indexOf(obj) >= 0){ |
|
565 |
T existing = result.get(result.indexOf(obj)); |
|
566 |
if (existing == obj){ |
|
567 |
continue; |
|
568 |
} |
|
569 |
} |
|
570 |
result.add(obj); |
|
571 |
} |
|
572 |
return result; |
|
573 |
} |
|
557 | 574 |
} |
cdmlib-services/src/main/java/eu/etaxonomy/cdm/api/service/TaxonServiceImpl.java | ||
---|---|---|
66 | 66 |
import eu.etaxonomy.cdm.api.service.search.SearchResult; |
67 | 67 |
import eu.etaxonomy.cdm.api.service.search.SearchResultBuilder; |
68 | 68 |
import eu.etaxonomy.cdm.api.util.TaxonRelationshipEdge; |
69 |
import eu.etaxonomy.cdm.common.CdmUtils; |
|
69 | 70 |
import eu.etaxonomy.cdm.common.monitor.IProgressMonitor; |
70 | 71 |
import eu.etaxonomy.cdm.compare.taxon.HomotypicGroupTaxonComparator; |
71 | 72 |
import eu.etaxonomy.cdm.compare.taxon.TaxonComparator; |
... | ... | |
1079 | 1080 |
} |
1080 | 1081 |
} |
1081 | 1082 |
|
1082 |
logger.trace("listMedia() - initialize"); |
|
1083 |
taxonMedia = deduplicateMedia(taxonMedia); |
|
1084 |
|
|
1085 |
if (logger.isTraceEnabled()){logger.trace("listMedia() - initialize");} |
|
1083 | 1086 |
beanInitializer.initializeAll(taxonMedia, propertyPath); |
1084 | 1087 |
|
1085 | 1088 |
if (logger.isTraceEnabled()){logger.trace("listMedia() - END");} |
... | ... | |
1087 | 1090 |
return taxonMedia; |
1088 | 1091 |
} |
1089 | 1092 |
|
1093 |
private List<Media> deduplicateMedia(List<Media> taxonMedia) { |
|
1094 |
return CdmUtils.removeIdentical(taxonMedia); |
|
1095 |
} |
|
1096 |
|
|
1090 | 1097 |
@Override |
1091 | 1098 |
public List<TaxonBase> findTaxaByID(Set<Integer> listOfIDs) { |
1092 | 1099 |
return this.dao.loadList(listOfIDs, null, null); |
Also available in: Unified diff
fix #9855 deduplicate images in TaxonServiceImpl.listMedia()