ref #6389 avoid service call for icon determination (performance)
authorpplitzner <pplitzner@BGBM-12138>
Thu, 26 Jan 2017 18:45:56 +0000 (19:45 +0100)
committerPatrick Plitzner <p.plitzner@bgbm.org>
Thu, 26 Jan 2017 18:53:09 +0000 (19:53 +0100)
 - additionally the service call returned undeterministic results

eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateLabelProvider.java

index b8f389a3e49404fadf27fb2e9b45f2552404a60c..362763e1fdd04d128bdf395df8bc4f3b47bf8935 100644 (file)
@@ -262,7 +262,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
             if(derivedUnit.getRecordBasis()==SpecimenOrObservationType.PreservedSpecimen){
                 //check for type designation
                 if(typeDesignations.get(derivedUnit)==null){
-                    for (SpecimenTypeDesignation specimenTypeDesignation : CdmStore.getService(IOccurrenceService.class).listTypeDesignations(derivedUnit, null, null, null, null)) {
+                    for (SpecimenTypeDesignation specimenTypeDesignation : derivedUnit.getSpecimenTypeDesignations()) {
                         addTypeDesignation(derivedUnit, specimenTypeDesignation);
                     }
                 }
@@ -460,7 +460,11 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
                     derivedUnits.add(HibernateProxyHelper.deproxy(specimenOrObservationBase, DerivedUnit.class));
                 }
             }
-            typeDesignations = CdmStore.getService(IOccurrenceService.class).listTypeDesignations(derivedUnits, null, null, null, null);
+            for (DerivedUnit derivedUnit : derivedUnits) {
+                if(!derivedUnit.getSpecimenTypeDesignations().isEmpty()){
+                    typeDesignations.put(derivedUnit, derivedUnit.getSpecimenTypeDesignations());
+                }
+            }
         }
     }