Merge branch 'release/5.11.0'
[taxeditor.git] / eu.etaxonomy.taxeditor.editor / src / main / java / eu / etaxonomy / taxeditor / editor / descriptiveDataSet / matrix / CharacterMatrixBottomToolbar.java
index 97fa8683bae5d2adb8e01e3be4c34f3f1f1dfba9..d9d82ec687ae37273eb7ddfa5c4a15f93cb56b32 100644 (file)
@@ -37,7 +37,7 @@ import eu.etaxonomy.cdm.api.application.CdmApplicationState;
 import eu.etaxonomy.cdm.api.service.IDescriptiveDataSetService;
 import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
 import eu.etaxonomy.cdm.api.service.UpdateResult;
-import eu.etaxonomy.cdm.api.service.config.DescriptionAggregationConfiguration;
+import eu.etaxonomy.cdm.api.service.description.StructuredDescriptionAggregationConfiguration;
 import eu.etaxonomy.cdm.api.service.dto.RowWrapperDTO;
 import eu.etaxonomy.cdm.api.service.dto.SpecimenRowWrapperDTO;
 import eu.etaxonomy.cdm.common.monitor.IRemotingProgressMonitor;
@@ -190,9 +190,12 @@ public class CharacterMatrixBottomToolbar extends Composite{
     }
 
     private void aggregatDescriptiveDataSet(UUID descriptiveDataSetUuid){
-        DescriptionAggregationConfiguration config = new DescriptionAggregationConfiguration();
-        config.setRecursiveAggregation(true);
-        UUID monitorUuid =  CdmApplicationState.getLongRunningTasksService().aggregateDescriptiveDataSet(descriptiveDataSetUuid, config);
+        // FIXME: set taxon node filter for config (this is still not used in the aggregation)
+        StructuredDescriptionAggregationConfiguration config = StructuredDescriptionAggregationConfiguration.NewInstance(
+                null, null);
+        config.setDataset(matrix.getDescriptiveDataSet());
+        config.setAggregateToHigherRanks(true);
+        UUID monitorUuid =  CdmApplicationState.getLongRunningTasksService().invoke(config);
 
         String jobLabel = "Aggregate Descriptive Data Set";
         Job job = Job.create(jobLabel, (ICoreRunnable) monitor -> {
@@ -216,7 +219,7 @@ public class CharacterMatrixBottomToolbar extends Composite{
                     dataSet = matrix.getCdmEntitiySession().load(dataSet, true);
                     // update local dataset
                     matrix.setDescriptiveDataSet(dataSet);
-                    matrix.loadDescriptions(descriptiveDataSetUuid);
+                    matrix.loadDescriptions(descriptiveDataSetUuid, false);
                 }
             } catch (InterruptedException e) {
                 return;
@@ -266,7 +269,7 @@ public class CharacterMatrixBottomToolbar extends Composite{
                     dataSet = matrix.getCdmEntitiySession().load(dataSet, true);
                     // update local dataset
                     matrix.setDescriptiveDataSet(dataSet);
-                    matrix.loadDescriptions(descriptiveDataSetUuid);
+                    matrix.loadDescriptions(descriptiveDataSetUuid, false);
                 }
             } catch (InterruptedException e) {
                 return;