From 31645e4feae1db9080b6c0c48adfd5570b4cfe5e Mon Sep 17 00:00:00 2001 From: Alexander Oppermann Date: Tue, 28 Apr 2015 14:19:55 +0000 Subject: [PATCH] Fix Ticket #4729 --- .gitattributes | 2 +- .../OSGI-INF/l10n/plugin.properties | 1 - .../OSGI-INF/l10n/plugin_de.properties | 7 +-- eu.etaxonomy.taxeditor.editor/plugin.xml | 9 --- .../FixClassificationHierarchyHandler.java | 60 ------------------- .../OSGI-INF/l10n/bundle.properties | 4 +- .../OSGI-INF/l10n/bundle_de.properties | 14 +++-- eu.etaxonomy.taxeditor.navigation/plugin.xml | 7 ++- .../FixClassificationHierarchyHandler.java | 54 +++++++++++++++++ 9 files changed, 75 insertions(+), 83 deletions(-) delete mode 100644 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/FixClassificationHierarchyHandler.java create mode 100644 eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/FixClassificationHierarchyHandler.java diff --git a/.gitattributes b/.gitattributes index 894042fa6..5c28b56af 100644 --- a/.gitattributes +++ b/.gitattributes @@ -391,7 +391,6 @@ eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/ eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/CdmAuthorityEditorInput.java -text eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/group/authority/handler/EditCdmAuthoritiesHandler.java -text eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/EditNewTaxonHandler.java -text -eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/FixClassificationHierarchyHandler.java -text eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenChecklistEditorHandler.java -text eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenDerivateViewHandler.java -text eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/OpenParentHandler.java -text @@ -981,6 +980,7 @@ eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigatio eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/CopyHandler.java -text eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/DeleteHandler.java -text eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/EditHandler.java -text +eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/FixClassificationHierarchyHandler.java -text eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/MoveFactualDataHandler.java -text eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/MoveTaxonHandler.java -text eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/NewClassificationHandler.java -text diff --git a/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/plugin.properties b/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/plugin.properties index 9065d1203..7e5c3e342 100644 --- a/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/plugin.properties +++ b/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/plugin.properties @@ -152,6 +152,5 @@ command.name.41 = Show Only Individual Associations command.name.42 = Open Taxon Editor command.name.43 = Create Field Unit command.name.44 = Deep Delete -command.name.45 = Fix Classification Hierarchy command.name.46 = Move Synonym (Homotypical Group) to another Accepted Taxon command.label.56 = Move Synonym (Homotypical Group) to another Accepted Taxon \ No newline at end of file diff --git a/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/plugin_de.properties b/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/plugin_de.properties index 3bb28d9be..e46102db4 100644 --- a/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/plugin_de.properties +++ b/eu.etaxonomy.taxeditor.editor/OSGI-INF/l10n/plugin_de.properties @@ -139,19 +139,18 @@ marker.field.2 = Attribut marker.field.3 = Problematischer Wert marker.field.4 = Problembeschreibung marker.field.5 = Validierer -marker.field.6 = Entitätsklasse -marker.field.7 = Entitäts ID +marker.field.6 = Entit�tsklasse +marker.field.7 = Entit�ts ID extension.name.0 = Validierungs-Fehler command.label.51 = \u00d6ffne Specimen-Editor command.label.52 = L\u00f6schen command.label.53 = Neue Field Unit command.label.54 = L\u00f6schen (mit Kindern) command.tooltip = Nur Individuals Associations anzeigen -command.label.55 = \u00d6ffne zugehörige Specimens +command.label.55 = \u00d6ffne zugeh�rige Specimens command.name.41 = Nur Individuals Associations anzeigen command.name.42 = \u00d6ffne Taxon Editor command.name.43 = Neue Field Unit command.name.44 = L\u00f6schen (mit Kindern) -command.name.45 = Erzeuge Taxon-Hierarchie command.name.46 = Verschiebe Synonym(Homotypische Gruppe) zu neuem Akzeptierten Taxon command.label.56 = Verschiebe Synonym(Homotypische Gruppe) zu neuem Akzeptierten Taxon \ No newline at end of file diff --git a/eu.etaxonomy.taxeditor.editor/plugin.xml b/eu.etaxonomy.taxeditor.editor/plugin.xml index f815f7718..98e9b29db 100644 --- a/eu.etaxonomy.taxeditor.editor/plugin.xml +++ b/eu.etaxonomy.taxeditor.editor/plugin.xml @@ -1118,10 +1118,6 @@ class="eu.etaxonomy.taxeditor.editor.view.descriptive.handler.ToggleShowOnlyIndividualAssociationsHandler" commandId="eu.etaxonomy.taxeditor.editor.handler.showOnlyIndividualAssociations"> - - - - diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/FixClassificationHierarchyHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/FixClassificationHierarchyHandler.java deleted file mode 100644 index aeff573a8..000000000 --- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/handler/FixClassificationHierarchyHandler.java +++ /dev/null @@ -1,60 +0,0 @@ -package eu.etaxonomy.taxeditor.editor.handler; - -import org.apache.log4j.Logger; -import org.eclipse.core.commands.AbstractHandler; -import org.eclipse.core.commands.ExecutionEvent; -import org.eclipse.core.commands.ExecutionException; -import org.eclipse.jface.viewers.ISelection; -import org.eclipse.jface.viewers.IStructuredSelection; -import org.eclipse.ui.handlers.HandlerUtil; - -import eu.etaxonomy.cdm.api.service.IClassificationService; -import eu.etaxonomy.cdm.model.taxon.Classification; -import eu.etaxonomy.taxeditor.model.MessagingUtils; -import eu.etaxonomy.taxeditor.preference.IPreferenceKeys; -import eu.etaxonomy.taxeditor.preference.PreferencesUtil; -import eu.etaxonomy.taxeditor.store.CdmStore; - -public class FixClassificationHierarchyHandler extends AbstractHandler { - - private static final Logger logger = Logger.getLogger(FixClassificationHierarchyHandler.class); - - /* - * (non-Javadoc) - * - * @see - * org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands. - * ExecutionEvent) - */ - @Override - public Object execute(ExecutionEvent event) throws ExecutionException { - boolean isChecklistEditorActivated = PreferencesUtil.getPreferenceStore().getBoolean( - IPreferenceKeys.DISTRIBUTION_AREA_PREFRENCES_ACTIVE); - if (isChecklistEditorActivated) { - ISelection currentSelection = HandlerUtil.getCurrentSelection(event); - if (currentSelection instanceof IStructuredSelection) { - Object selectedElement = ((IStructuredSelection) currentSelection).getFirstElement(); - if (selectedElement instanceof Classification) { - - Classification classification = (Classification) selectedElement; - try { - IClassificationService service = CdmStore.getService(IClassificationService.class); - - // Map> sortedGenusList = - // service.getSortedGenusList(classification.getAllNodes()); - - Classification newClassification = service.createHierarchyInClassification(classification, null); - - MessagingUtils.messageDialog("Fix Hierarchy successful", - FixClassificationHierarchyHandler.class, "Operation 'Fix Hierarchy' was successful. New classification is " + newClassification.getTitleCache()); - - } catch (Exception e) { - MessagingUtils.messageDialog("Failed to open Editor", FixClassificationHierarchyHandler.class, - "Could not open ChecklistView. The hierarchy is corrupted!", e); - } - } - } - } - return null; - } -} diff --git a/eu.etaxonomy.taxeditor.navigation/OSGI-INF/l10n/bundle.properties b/eu.etaxonomy.taxeditor.navigation/OSGI-INF/l10n/bundle.properties index e723afba9..27da5feba 100644 --- a/eu.etaxonomy.taxeditor.navigation/OSGI-INF/l10n/bundle.properties +++ b/eu.etaxonomy.taxeditor.navigation/OSGI-INF/l10n/bundle.properties @@ -25,6 +25,7 @@ menu.label.0 = Refresh command.label.17 = List command.label.18 = Key Nodes command.label.19 = Delete +command.label.fixClassificationHierarchy = Create taxon hierarchy command.name = New Taxon Node command.name.0 = New classification command.name.1 = Edit @@ -36,10 +37,11 @@ command.name.6 = New Polytomous Key command.name.7 = Edit Polytomous Key nodes command.name.8 = Refresh Polytomous Key list command.name.9 = Refresh Polytomous Key nodes +command.name.10 = Fix Classification Hierarchy + view.name.2 = Taxonomic Tree navigatorContent.name = Classification navigatorContent.name.0 = TaxonNode navigatorContent.name.1 = Synonyms (experimental) -command.label.fixClassificationHierarchy = Create taxon hierarchy command.label.moveFactualData = Move factual data to another taxon command.name.moveFactualData = Move factual data \ No newline at end of file diff --git a/eu.etaxonomy.taxeditor.navigation/OSGI-INF/l10n/bundle_de.properties b/eu.etaxonomy.taxeditor.navigation/OSGI-INF/l10n/bundle_de.properties index a023560a0..12b1f1376 100644 --- a/eu.etaxonomy.taxeditor.navigation/OSGI-INF/l10n/bundle_de.properties +++ b/eu.etaxonomy.taxeditor.navigation/OSGI-INF/l10n/bundle_de.properties @@ -21,9 +21,11 @@ command.label.13 = Taxon command.label.14 = Klassifikation command.label.15 = Neu command.label.16 = Bearbeiten +command.label.fixClassificationHierarchy = Erzeuge Taxon-Hierarchie + menu.label.0 = Aktualisieren command.label.17 = Liste -command.label.18 = Schlüsselknoten +command.label.18 = Schl�sselknoten command.label.19 = L\u00F6schen command.name = Neuer Taxonknoten command.name.0 = Neue Klassifikation @@ -32,14 +34,14 @@ command.name.2 = Verschiebe Taxon command.name.3 = Aktualisieren command.name.4 = Kopieren command.name.5 = Verschiebe akzeptiertes Taxon in Synonymie -command.name.6 = Neuer Polytomer Schlüssel -command.name.7 = Bearbeite Schlüssel-Knoten -command.name.8 = Aktualisiere Schlüssel-Liste -command.name.9 = Aktualisiere Schlüssel-Knoten +command.name.6 = Neuer Polytomer Schl�ssel +command.name.7 = Bearbeite Schl�ssel-Knoten +command.name.8 = Aktualisiere Schl�ssel-Liste +command.name.9 = Aktualisiere Schl�ssel-Knoten +command.name.10 = Erzeuge Taxon-Hierarchie view.name.2 = Taxonomiebaum navigatorContent.name = Klassifikation navigatorContent.name.0 = Taxonknoten navigatorContent.name.1 = Synonyme (experimentell) -command.label.fixClassificationHierarchy = Erzeuge Taxon-Hierarchie command.label.moveFactualData = Verschiebe Faktendaten zu Taxon command.name.moveFactualData = Verschiebe Faktendaten \ No newline at end of file diff --git a/eu.etaxonomy.taxeditor.navigation/plugin.xml b/eu.etaxonomy.taxeditor.navigation/plugin.xml index 0031fffd5..39cbba96e 100644 --- a/eu.etaxonomy.taxeditor.navigation/plugin.xml +++ b/eu.etaxonomy.taxeditor.navigation/plugin.xml @@ -128,7 +128,7 @@ + + diff --git a/eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/FixClassificationHierarchyHandler.java b/eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/FixClassificationHierarchyHandler.java new file mode 100644 index 000000000..2505dfc08 --- /dev/null +++ b/eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/FixClassificationHierarchyHandler.java @@ -0,0 +1,54 @@ +package eu.etaxonomy.taxeditor.navigation.navigator.handler; + +import org.apache.log4j.Logger; +import org.eclipse.core.commands.AbstractHandler; +import org.eclipse.core.commands.ExecutionEvent; +import org.eclipse.core.commands.ExecutionException; +import org.eclipse.jface.viewers.ISelection; +import org.eclipse.jface.viewers.IStructuredSelection; +import org.eclipse.ui.handlers.HandlerUtil; + +import eu.etaxonomy.cdm.api.service.IClassificationService; +import eu.etaxonomy.cdm.model.taxon.Classification; +import eu.etaxonomy.taxeditor.model.MessagingUtils; +import eu.etaxonomy.taxeditor.store.CdmStore; + +public class FixClassificationHierarchyHandler extends AbstractHandler { + + private static final Logger logger = Logger.getLogger(FixClassificationHierarchyHandler.class); + + /* + * (non-Javadoc) + * + * @see + * org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands. + * ExecutionEvent) + */ + @Override + public Object execute(ExecutionEvent event) throws ExecutionException { + ISelection currentSelection = HandlerUtil.getCurrentSelection(event); + if (currentSelection instanceof IStructuredSelection) { + Object selectedElement = ((IStructuredSelection) currentSelection).getFirstElement(); + if (selectedElement instanceof Classification) { + + Classification classification = (Classification) selectedElement; + try { + IClassificationService service = CdmStore.getService(IClassificationService.class); + + // Map> sortedGenusList = + // service.getSortedGenusList(classification.getAllNodes()); + + Classification newClassification = service.createHierarchyInClassification(classification, null); + + MessagingUtils.messageDialog("Fix Hierarchy successful", + FixClassificationHierarchyHandler.class, "Operation 'Fix Hierarchy' was successful. New classification is " + newClassification.getTitleCache()); + + } catch (Exception e) { + MessagingUtils.messageDialog("Failed to open Editor", FixClassificationHierarchyHandler.class, + "Could not open ChecklistView. The hierarchy is corrupted!", e); + } + } + } + return null; + } +} -- 2.34.1