ref #6800: add missing taxonnode filter when selecting all classification
authorKatja Luther <k.luther@bgbm.org>
Fri, 12 Jan 2018 12:26:38 +0000 (13:26 +0100)
committerKatja Luther <k.luther@bgbm.org>
Fri, 12 Jan 2018 12:26:38 +0000 (13:26 +0100)
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/e4/out/dwca/DarwinCoreArchiveExportWizardE4.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExportToFileDestinationWizardPage.java

index 5569acbd4e7514e5fbd79ca9bf1b3814c140d382..265e12908d84c2d696bb7b7dd498af489985efee 100644 (file)
@@ -10,6 +10,7 @@
 package eu.etaxonomy.taxeditor.io.e4.out.dwca;
 
 import java.io.File;
+import java.util.UUID;
 
 import javax.inject.Inject;
 import javax.inject.Named;
@@ -68,7 +69,19 @@ public class DarwinCoreArchiveExportWizardE4 extends
        public boolean performFinish() {
                String urlString = page.getFolderText() + File.separator
                                + page.getExportFileName();
-
+               
+               if (!page.getCheckUseSelectedTaxonNode()){
+                       configurator.getTaxonNodeFilter().reset();
+                       if (!page.getCheckUseAllClassifications()){
+                               configurator.getTaxonNodeFilter().orClassification(page.getSelectedClassificationUUID());
+                       }else{
+                               for (UUID classificationUuid: page.getAllClassificationUuids()){
+                                       configurator.getTaxonNodeFilter().orClassification(classificationUuid);
+                               }
+                               
+                       }
+               }
+               
 
                CdmStore.getExportManager().runMoniteredOperation(configurator, urlString);
                return true;
index 672909c4d4d1b1c5cd47e3579c211e0624eb46bd..63e0ef203705c36afd38f343d81d63261cc2ef70 100644 (file)
@@ -13,7 +13,9 @@ import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.Collections;
 import java.util.Comparator;
+import java.util.HashSet;
 import java.util.List;
+import java.util.Set;
 import java.util.UUID;
 
 import org.eclipse.jface.wizard.WizardPage;
@@ -294,9 +296,10 @@ public class ExportToFileDestinationWizardPage extends WizardPage implements Sel
                                       @Override
                                       public void handleEvent(Event e) {
                                           Button b = (Button) e.widget;
-                                               GridData data = (GridData)  classificationSelectionCombo.getLayoutData();
-                                               data.exclude = b.getSelection();
-                                               classificationSelectionCombo.setVisible(!data.exclude);
+                                              GridData data = (GridData)  classificationSelectionCombo.getLayoutData();
+                                              data.exclude = b.getSelection();
+                                              classificationSelectionCombo.setVisible(!data.exclude);
+                                              
                                       }
                                                });
                                  }  
@@ -470,6 +473,20 @@ public class ExportToFileDestinationWizardPage extends WizardPage implements Sel
                }
                return checkUseSelectedtaxonNode.getSelection();
        }
+       public boolean getCheckUseAllClassifications() {
+               if (checkUseAllClassification== null){
+                       return false;
+               }
+               return checkUseAllClassification.getSelection();
+       }
+       
+       public Set<UUID> getAllClassificationUuids(){
+               Set<UUID> allClassificationUuids = new HashSet();
+               for (Classification classification: this.classifications){
+                       allClassificationUuids.add(classification.getUuid());
+               }
+               return allClassificationUuids;
+       }
 
        @Override
        public boolean canFlipToNextPage() {