export of csv files with name informations and for Print output(for caryophyllales)
authorKatja Luther <k.luther@bgbm.org>
Wed, 22 Apr 2015 11:40:40 +0000 (11:40 +0000)
committerKatja Luther <k.luther@bgbm.org>
Wed, 22 Apr 2015 11:40:40 +0000 (11:40 +0000)
.gitattributes
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractIOManager.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvNameExportWizard.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvPrintExportWizard.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExportToFileDestinationWizardPage.java

index e8b0c30f591930a10d13e49bd1f952c6a66a87a2..65b31c7cf49c67f44b458c59feaaf607b39a6651 100644 (file)
@@ -1274,6 +1274,8 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/Abst
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/AbstractImportWizard.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ClassificationChooserWizardPage.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvExportWizard.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvNameExportWizard.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvPrintExportWizard.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/DarwinCoreArchiveExportWizard.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/EndnoteImportWizard.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExcelNormalExplicitTaxaImportWizard.java -text
index b0bf2f002f1a13f32d0f9b66636c36240c1a019c..164ed003754e187e91dfa9ce91fe3ef3f23c4b00 100644 (file)
@@ -421,9 +421,8 @@ public class MultiPageTaxonEditor extends FormEditor implements
     /** {@inheritDoc} */
     @Override
     public boolean postOperation(CdmBase objectAffectedByOperation) {
-       if (objectAffectedByOperation != null){
-               setDirty(true);
-       }
+        setDirty(true);
+
         for (IEditorPart editor : this.getPages()) {
             if (editor instanceof IPostOperationEnabled) {
                 ((IPostOperationEnabled) editor).postOperation(objectAffectedByOperation);
index 5b0d4fc6f1e2a33805ca03c3c93bab1f6fc58fb7..2504f4a1746edbacbacd88e041137d6cc4ba2462 100644 (file)
@@ -30,7 +30,7 @@ public abstract class AbstractIOManager<CONFIGURATOR extends IIoConfigurator> {
        protected ICdmApplicationConfiguration applicationConfiguration;
 
        public static enum TYPE {
-               Jaxb, Tcs, Excel_Taxa, Endnote, Sdd, Abcd, SpecimenCdmExcel
+               Jaxb, Tcs, Excel_Taxa, Endnote, Sdd, Abcd, SpecimenCdmExcel, Excel_Name
        }
 
        /**
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvNameExportWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvNameExportWizard.java
new file mode 100644 (file)
index 0000000..a03d8b6
--- /dev/null
@@ -0,0 +1,95 @@
+// $Id$\r
+/**\r
+ * Copyright (C) 2007 EDIT\r
+ * European Distributed Institute of Taxonomy\r
+ * http://www.e-taxonomy.eu\r
+ *\r
+ * The contents of this file are subject to the Mozilla Public License Version 1.1\r
+ * See LICENSE.TXT at the top of this package for the full license terms.\r
+ */\r
+\r
+package eu.etaxonomy.taxeditor.io.wizard;\r
+\r
+import java.io.File;\r
+import java.util.HashSet;\r
+import java.util.List;\r
+import java.util.UUID;\r
+\r
+import org.eclipse.jface.viewers.IStructuredSelection;\r
+import org.eclipse.swt.widgets.Combo;\r
+import org.eclipse.ui.IWorkbench;\r
+\r
+import eu.etaxonomy.cdm.io.csv.caryophyllales.out.CsvNameExportConfigurator;\r
+import eu.etaxonomy.cdm.model.taxon.Classification;\r
+import eu.etaxonomy.taxeditor.store.CdmStore;\r
+\r
+/**\r
+ * @author k.luther\r
+ * @created Apr. 12, 2015\r
+ * @version 1.0\r
+ */\r
+public class CsvNameExportWizard extends AbstractExportWizard<CsvNameExportConfigurator> {\r
+\r
+       protected CsvNameExportConfigurator configurator;\r
+       protected ExportToFileDestinationWizardPage page;\r
+\r
+       private final String description = "Export the names of the currently selected database into Semicolon Separated Value format.";\r
+       /*\r
+        * (non-Javadoc)\r
+        *\r
+        * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench,\r
+        * org.eclipse.jface.viewers.IStructuredSelection)\r
+        */\r
+       @Override\r
+       public void init(IWorkbench workbench, IStructuredSelection selection) {\r
+               configurator = CsvNameExportConfigurator.NewInstance(null,null);\r
+       }\r
+\r
+       /*\r
+        * (non-Javadoc)\r
+        *\r
+        * @see\r
+        * eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#getConfigurator()\r
+        */\r
+       @Override\r
+       public CsvNameExportConfigurator getConfigurator() {\r
+               return configurator;\r
+       }\r
+\r
+       /*\r
+        * (non-Javadoc)\r
+        *\r
+        * @see org.eclipse.jface.wizard.Wizard#performFinish()\r
+        */\r
+       @Override\r
+       public boolean performFinish() {\r
+               String urlString = page.getFolderText() + File.separator\r
+                               + page.getExportFileName();\r
+\r
+               final Combo combo = page.getCombo();\r
+               \r
+               configurator.setDestination(new File(urlString));\r
+\r
+               CdmStore.getExportManager().run(configurator);\r
+\r
+               return true;\r
+       }\r
+\r
+       /*\r
+        * (non-Javadoc)\r
+        *\r
+        * @see eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#addPages()\r
+        */\r
+       @Override\r
+       public void addPages() {\r
+           //TODO create page with drop down menu for export for single classification.\r
+//             super.addPages();\r
+\r
+\r
+               //standard page\r
+               page =  ExportToFileDestinationWizardPage.CsvNames();\r
+\r
+               addPage(page);\r
+       }\r
+}\r
+\r
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvPrintExportWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/CsvPrintExportWizard.java
new file mode 100644 (file)
index 0000000..81e8105
--- /dev/null
@@ -0,0 +1,89 @@
+package eu.etaxonomy.taxeditor.io.wizard;\r
+\r
+import java.io.File;\r
+import java.util.HashSet;\r
+import java.util.List;\r
+import java.util.UUID;\r
+\r
+import org.eclipse.jface.viewers.IStructuredSelection;\r
+import org.eclipse.swt.widgets.Combo;\r
+import org.eclipse.ui.IWorkbench;\r
+\r
+import eu.etaxonomy.cdm.io.csv.caryophyllales.out.CsvNameExportConfigurator;\r
+import eu.etaxonomy.cdm.model.taxon.Classification;\r
+import eu.etaxonomy.taxeditor.store.CdmStore;\r
+\r
+public class CsvPrintExportWizard extends CsvNameExportWizard{\r
+       \r
+       \r
+       private final String description = "Export the contents of the currently selected database into Semicolon Separated Value format.";\r
+       @Override\r
+       public void init(IWorkbench workbench, IStructuredSelection selection) {\r
+               configurator = CsvNameExportConfigurator.NewInstance(null,null);\r
+               configurator.setNamesOnly(false);\r
+       }\r
+\r
+       @Override\r
+       public CsvNameExportConfigurator getConfigurator() {\r
+               \r
+               return configurator;\r
+       }\r
+\r
+       \r
+\r
+       /*\r
+        * (non-Javadoc)\r
+        *\r
+        * @see eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#addPages()\r
+        */\r
+       @Override\r
+       public void addPages() {\r
+           //TODO create page with drop down menu for export for single classification.\r
+//             super.addPages();\r
+\r
+\r
+               //standard page\r
+               page =  ExportToFileDestinationWizardPage.CsvPrint();\r
+\r
+               addPage(page);\r
+       }\r
+       /*\r
+        * (non-Javadoc)\r
+        *\r
+        * @see org.eclipse.jface.wizard.Wizard#performFinish()\r
+        */\r
+       @Override\r
+       public boolean performFinish() {\r
+               String urlString = page.getFolderText() + File.separator\r
+                               + page.getExportFileName();\r
+\r
+               final Combo combo = page.getCombo();\r
+               final List<Classification> listClassifications = CdmStore.getCurrentApplicationConfiguration().getClassificationService().listClassifications(null, null, null, null);\r
+               if(combo != null){\r
+                   int selectionIndex = combo.getSelectionIndex();\r
+                   HashSet<UUID> set = new HashSet<UUID>();\r
+                   if(selectionIndex == -1){\r
+                       for(Classification c:listClassifications){\r
+                           set.add(c.getUuid());\r
+                       }\r
+                   }else{\r
+                       for(Classification c:listClassifications){\r
+                           if(c.getTitleCache().equalsIgnoreCase(combo.getItem(selectionIndex))){\r
+                               set.add(c.getUuid());\r
+                           }\r
+                       }\r
+                      \r
+                       configurator.setHasHeaderLines(true);\r
+                       \r
+                   }\r
+               } else{         \r
+                       configurator.setClassificationUUID(listClassifications.get(0).getUuid());\r
+               }\r
+               configurator.setDestination(new File(urlString));\r
+\r
+               CdmStore.getExportManager().run(configurator);\r
+\r
+               return true;\r
+       }\r
+\r
+}\r
index 8277684dadd36a28a1b108df49492eba76d92ea3..6d63fbd675122e32ac450352a3266913668b9487 100644 (file)
@@ -72,6 +72,10 @@ public class ExportToFileDestinationWizardPage extends WizardPage {
     
     private static boolean csvNameExport = false;
 
+       private static String CSV_PRINT_EXPORT ="CSV_PRINT_EXPORT";
+
+       private static boolean csvPrintExport = false;
+
        private DirectoryDialog folderDialog;
        private Text text_exportFileName;
 
@@ -190,6 +194,19 @@ public class ExportToFileDestinationWizardPage extends WizardPage {
                 "Export the names of the currently selected database into Semicolon Separated Value format.",
                 CSV);
     }
+    
+    /**
+     * @return
+     */
+    public static ExportToFileDestinationWizardPage CsvPrint() {
+       csvPrintExport  = true;
+        return new ExportToFileDestinationWizardPage(
+                CSV_PRINT_EXPORT,
+                "csvPrint",
+                "CSV Print Export",
+                "Export the content of the currently selected database into Semicolon Separated Value format.",
+                CSV);
+    }
 
        /*
         * (non-Javadoc)