Merge branch 'release/4.7.0' 4.7.0
authorjenkins <jenkins-int@bgbm.org>
Tue, 16 May 2017 15:19:19 +0000 (17:19 +0200)
committerjenkins <jenkins-int@bgbm.org>
Tue, 16 May 2017 15:19:19 +0000 (17:19 +0200)
198 files changed:
eu.etaxonomy.taxeditor.application/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.application/OSGI-INF/l10n/plugin.properties
eu.etaxonomy.taxeditor.application/OSGI-INF/l10n/plugin_de.properties
eu.etaxonomy.taxeditor.application/build.properties
eu.etaxonomy.taxeditor.application/fragment.e4xmi [new file with mode: 0644]
eu.etaxonomy.taxeditor.application/plugin.xml
eu.etaxonomy.taxeditor.application/pom.xml
eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/admin/UserGroupContributionItem.java [deleted file]
eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/perspective/BulkEditing.java [deleted file]
eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/perspective/DerivatePerspective.java
eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/update/P2Util.java
eu.etaxonomy.taxeditor.bulkeditor/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.bulkeditor/OSGI-INF/l10n/bundle.properties
eu.etaxonomy.taxeditor.bulkeditor/OSGI-INF/l10n/bundle_de.properties
eu.etaxonomy.taxeditor.bulkeditor/build.properties
eu.etaxonomy.taxeditor.bulkeditor/fragment.e4xmi [new file with mode: 0644]
eu.etaxonomy.taxeditor.bulkeditor/plugin.xml
eu.etaxonomy.taxeditor.bulkeditor/pom.xml
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/annotatedlineeditor/IEntityCreator.java
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/DynamicNewObjectMenu.java
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/handler/DeleteHandler.java
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/input/OccurrenceEditorInput.java
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/input/entitycreator/NameCreator.java
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/l10n/Messages.java
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/l10n/messages.properties
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/l10n/messages_de.properties
eu.etaxonomy.taxeditor.cdmlib/.classpath
eu.etaxonomy.taxeditor.cdmlib/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.cdmlib/build.properties
eu.etaxonomy.taxeditor.cdmlib/lib/doxia-core-1.6.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/doxia-logging-api-1.6.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/doxia-module-apt-1.6.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/doxia-module-xhtml-1.6.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/doxia-sink-api-1.6.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-analyzers-3.6.2.jar [new file with mode: 0644]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-backward-codecs-5.4.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-facet-5.4.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-grouping-5.4.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-highlighter-5.4.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-join-5.4.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-memory-5.4.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-misc-5.4.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/lucene-queries-5.4.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/org.osgi.core-1.0.0.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/osgi-3.6.0.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/plexus-classworlds-1.2-alpha-9.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/plexus-component-annotations-1.5.5.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/plexus-container-default-1.0-alpha-30.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/plexus-utils-3.0.15.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/stax-1.2.0.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/stax-api-1.0.1.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/stax-ex-1.7.7.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/swagger-annotations-1.5.6.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/lib/swagger-models-1.5.5.jar [deleted file]
eu.etaxonomy.taxeditor.cdmlib/pom.xml
eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/cache/CdmServiceCacher.java
eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/CdmAuthenticatedHttpInvokerRequestExecutor.java
eu.etaxonomy.taxeditor.editor/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.editor/plugin.xml
eu.etaxonomy.taxeditor.editor/pom.xml
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/MultiPageTaxonEditor.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/Messages.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages.properties
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/l10n/messages_de.properties
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/TaxonNameEditor.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/DeleteTaxonBaseHandler.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/handler/MoveSynonymToAnotherAcceptedTaxonHandler.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/operation/DeleteMisapplicationOperation.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/searchFilter/DerivateSearchCompositeController.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/handler/DeleteHandler.java
eu.etaxonomy.taxeditor.feature.jre.linux64/feature.xml
eu.etaxonomy.taxeditor.feature.jre.linux64/pom.xml
eu.etaxonomy.taxeditor.feature.platform/feature.xml
eu.etaxonomy.taxeditor.feature.platform/pom.xml
eu.etaxonomy.taxeditor.feature/feature.xml
eu.etaxonomy.taxeditor.feature/pom.xml
eu.etaxonomy.taxeditor.help/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.help/pom.xml
eu.etaxonomy.taxeditor.molecular.lib/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.molecular.lib/pom.xml
eu.etaxonomy.taxeditor.molecular/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.molecular/pom.xml
eu.etaxonomy.taxeditor.navigation/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.navigation/build.properties
eu.etaxonomy.taxeditor.navigation/fragment.e4xmi [new file with mode: 0644]
eu.etaxonomy.taxeditor.navigation/plugin.xml
eu.etaxonomy.taxeditor.navigation/pom.xml
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/l10n/messages.properties
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/l10n/messages_de.properties
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/RemotingChangeAcceptedTaxonToSynonymHandler.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/RemotingMoveTaxonNodeHandler.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/handler/SetSecReferenceForSubtreeHandler.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/SetSecundumForSubtreeOperation.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/search/SearchBar.java
eu.etaxonomy.taxeditor.printpublisher/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.printpublisher/pom.xml
eu.etaxonomy.taxeditor.store/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.store/OSGI-INF/l10n/bundle.properties
eu.etaxonomy.taxeditor.store/OSGI-INF/l10n/bundle_de.properties
eu.etaxonomy.taxeditor.store/build.properties
eu.etaxonomy.taxeditor.store/fragment.e4xmi [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/plugin.xml
eu.etaxonomy.taxeditor.store/pom.xml
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/AbstractPreferenceWizard.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/DatabasePreferencesPage.java [changed mode: 0644->0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/DatabasePreferencesWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/ImportPreferencesWizard.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/ListComponent.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/NameDetailsViewComposite.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/editor/definedterm/DefinedTermMenu.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenDatabasePreferencesWizardHandler.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenDatabaseRepairWizardHandler.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenImportPreferenceHandler.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractIOManager.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ExportManager.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ImportManager.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/AbcdImportConfiguratorWizardPage.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/AbcdImportWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/AbstractExportWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/AbstractImportWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/DarwinCoreArchiveExportWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExcelDistributionUpdateWizard.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExportToFileDestinationWizardPage.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/GenericConfiguratorWizardPage.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ImportFromFileAndChooseVocIdWizardOage.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ImportFromFileDataSourceWizardPage.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/OutputModelExportWizard.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/RISImportWizard.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/l10n/Messages.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/l10n/messages.properties
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/l10n/messages_de.properties
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/AbstractUtility.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/NomenclaturalCodeHelper.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewGrantedAuthorityWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/IPreferenceKeys.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/PreferencesUtil.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/store/CdmStore.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/store/SearchManager.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/bar/AuthenticatedUserBar.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/configurator/ConfiguratorComposite.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/configurator/SetSecundumConfiguratorWizardPage.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/configurator/SetSecundumForSubtreeConfigurationWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/configurator/deleteConfigurator/DeleteConfiguratorDialog.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/configurator/deleteConfigurator/DeleteMediaConfiguratorComposite.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/NomenclaturalReferenceSelectionDialog.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/ReferenceSelectionDialog.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/SelectionDialogFactory.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/NameRelationshipWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/NonViralNameDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/name/ProtologueSection.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/reference/ReferenceDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/reference/ReferenceWizardPage.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/selection/EditFromSelectionWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/DataImportView.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/GbifResponseImportView.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/SaveImportedSpecimenAction.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/SpecimenImportView.java [changed mode: 0644->0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/TestSpecimenImportView.java [new file with mode: 0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/datasource/CdmDataSourceViewPart.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateLabelProvider.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/sessions/SessionsViewPart.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenProviderSelectionComposite.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenProviderSelectionController.java
eu.etaxonomy.taxeditor.test/.settings/org.eclipse.jdt.core.prefs
eu.etaxonomy.taxeditor.test/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.test/pom.xml
eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/service/IOServiceExportTest.java
eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionAwareTest.java
eu.etaxonomy.taxeditor.webapp/.settings/org.eclipse.jdt.core.prefs
eu.etaxonomy.taxeditor.webapp/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.webapp/build.properties
eu.etaxonomy.taxeditor.webapp/pom.xml
eu.etaxonomy.taxeditor.workbench/.classpath [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/.project [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/META-INF/MANIFEST.MF [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/OSGI-INF/l10n/bundle.properties [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/OSGI-INF/l10n/bundle_de.properties [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/build.properties [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/fragment.e4xmi [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/plugin.xml [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/pom.xml [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/Activator.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/AppModelId.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/OpenExternalAboutPlatformHandler.java [moved from eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/OpenExternalAboutPlatformHandler.java with 64% similarity]
eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/OpenExternalParserHelpHandler.java [moved from eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/OpenExternalParserHelpHandler.java with 69% similarity]
eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/OpenPartHandler.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/update/InstallNewSoftwareHandler.java [moved from eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/update/InstallNewSoftwareHandler.java with 83% similarity]
eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/update/PreloadingRepositoryHandler.java [moved from eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/update/PreloadingRepositoryHandler.java with 83% similarity]
eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/update/UpdateHandler.java [moved from eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/update/UpdateHandler.java with 97% similarity]
eu.etaxonomy.taxeditor/eu.etaxonomy.taxeditor.product
eu.etaxonomy.taxeditor/eu.etaxonomy.taxeditor.product.with.jre
eu.etaxonomy.taxeditor/pom.xml
eu.etaxonomy.taxeditor/rcp.target
pom.xml

index a4db3394c5b49a8db949ab407f6c667d5e5f2931..e0cd67476b8a60ef4788dd941f2682c4ac7ba363 100644 (file)
@@ -2,25 +2,15 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Application
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.application;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Bundle-Activator: eu.etaxonomy.taxeditor.TaxonomicEditorPlugin
 Bundle-Vendor: EDIT
 Bundle-Localization: OSGI-INF/l10n/plugin
 Export-Package: eu.etaxonomy.taxeditor
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Import-Package: eu.etaxonomy.cdm.database,
- org.apache.log4j,
- org.eclipse.equinox.app,
- org.eclipse.equinox.p2.repository.metadata,
- org.osgi.framework,
- org.osgi.service.packageadmin,
- org.springframework.remoting
 Require-Bundle: org.eclipse.ui,
  org.eclipse.core.runtime,
  eu.etaxonomy.taxeditor.store,
  eu.etaxonomy.taxeditor.navigation,
- eu.etaxonomy.taxeditor.bulkeditor,
  eu.etaxonomy.taxeditor.editor,
  eu.etaxonomy.taxeditor.printpublisher,
  eu.etaxonomy.taxeditor.molecular;resolution:=optional,
@@ -37,3 +27,14 @@ Require-Bundle: org.eclipse.ui,
  org.eclipse.equinox.p2.engine,
  org.eclipse.equinox.p2.metadata.repository,
  org.eclipse.equinox.p2.repository
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
+Import-Package: eu.etaxonomy.cdm.database,
+ javax.annotation;version="1.0.0";resolution:=optional,
+ javax.inject;version="1.0.0",
+ org.apache.log4j,
+ org.eclipse.equinox.app,
+ org.eclipse.equinox.p2.repository.metadata,
+ org.osgi.framework,
+ org.osgi.service.packageadmin,
+ org.springframework.remoting
index d1ad81663b39e91938d0efb84f19c7746011e3d6..7a9936751effe291558a1131cfe9245a2c69749e 100644 (file)
@@ -15,41 +15,9 @@ perspective.name.0 = Polytomous Key
 perspective.name.1 = Uses\r
 perspective.name.2 = Derivatives\r
 perspective.name.3 = Checklist\r
-menu.label = General\r
-menu.label.0 = Edit\r
-menu.label.1 = Window\r
-menu.label.2 = Help\r
-menu.label.3 = New\r
-menu.label.4 = Admin\r
-command.label = Close\r
-command.label.0 = Close All\r
-command.label.1 = Save\r
-command.label.2 = Save All\r
-command.label.3 = Import...\r
-command.label.4 = Export...\r
-command.label.5 = Exit\r
-command.label.6 = Undo\r
-command.label.7 = Redo\r
-command.label.8 = Cut\r
-command.label.9 = Copy\r
-command.label.10 = Paste\r
-command.label.11 = Delete\r
-command.label.12 = Preferences\r
-command.label.13 = Help Contents\r
-command.label.14 = Search\r
-command.label.15 = Dynamic Help\r
-command.label.16 = Parser Help Website\r
-command.label.17 = Check for Updates\r
-command.label.18 = Install New Software...\r
-command.label.19 = About Taxonomic Editor\r
-command.label.20 = About the EDIT Platform\r
-command.label.21 = New\r
-command.label.22 = Save\r
-command.label.23 = Database Preferences\r
-command.label.24 = Database Repair Functionality\r
 product.name = EDIT Taxonomic Editor\r
-command.name = Parser Help\r
-command.name.0 = About the EDIT Platform\r
 activity.description = Disable unwanted eclipse UI\r
 activity.name = Disable\r
-product.name.0 = EDIT Taxonomic Editor
\ No newline at end of file
+product.name.0 = EDIT Taxonomic Editor\r
+command.label.25 = Import Preferences\r
+command.label.23 = Server-sided Preferences
\ No newline at end of file
index ba37a6c3fda66be14395c2eea313e3a123eb7b5d..ae085c802a2f31724f2a2632349db4d1bd7183bd 100644 (file)
@@ -45,8 +45,9 @@ command.label.19 = \u00dcber den Taxonomischen Editor
 command.label.20 = \u00dcber die EDIT Platform
 command.label.21 = Neu
 command.label.22 = Speichern
-command.label.23 = Datenbank Präferenzen
+command.label.23 = Serverseitige Präferenzen
 command.label.24 = Datenbank Reparatur Funktionalität
+command.label.25 = Import Präferenzen
 product.name = EDIT Taxonomischer Editor
 command.name = Parser Hilfe
 command.name.0 = \u00dcber die EDIT Platform
index 46fe7efb559c628f2be65c0e15f72c6fa97e2949..62fdc725341fa5ec1e2b7b05c5b7edbd7dbdff72 100644 (file)
@@ -1,5 +1,3 @@
-source.. = src/main/java/,\
-           src/test/java/
 bin.includes = META-INF/,\
                .,\
                plugin.xml,\
@@ -7,4 +5,7 @@ bin.includes = META-INF/,\
                icons/,\
                OSGI-INF/l10n/plugin.properties,\
                OSGI-INF/l10n/plugin_de.properties,\
-               splash.bmp,\              
+               splash.bmp,\
+               fragment.e4xmi
+source.. = src/main/java/,\
+           src/test/java/
diff --git a/eu.etaxonomy.taxeditor.application/fragment.e4xmi b/eu.etaxonomy.taxeditor.application/fragment.e4xmi
new file mode 100644 (file)
index 0000000..1e9ad5b
--- /dev/null
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="ASCII"?>
+<fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:commands="http://www.eclipse.org/ui/2010/UIModel/application/commands" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmlns:menu="http://www.eclipse.org/ui/2010/UIModel/application/ui/menu" xmlns:ui="http://www.eclipse.org/ui/2010/UIModel/application/ui" xmi:id="_pdAMoB4DEeehWtOSgLepjA">
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_0q2vsB4EEeehWtOSgLepjA" featurename="descriptors" parentElementId="org.eclipse.e4.legacy.ide.application"/>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_bM7nAB4IEeehWtOSgLepjA" featurename="menuContributions" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="menu:MenuContribution" xmi:id="_q5WDAB6sEeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.menucontribution.menu" parentId="org.eclipse.ui.main.menu">
+      <children xsi:type="menu:Menu" xmi:id="_0MhekB6sEeePLJ5to5QrXQ" elementId="org.eclipse.ui.main.menu.file" label="%menu.label">
+        <children xsi:type="menu:Menu" xmi:id="_zznkcB6uEeePLJ5to5QrXQ" elementId="eu.etaxonomy.navigation.menu.new" label="%menu.label.3"/>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_5ETa8B6uEeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.menuseparator.0"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_ubXMsB62EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.close" label="%command.label" command="_LVTo8B62EeePLJ5to5QrXQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_EafiMB7SEeeC-JvycL9ysA" coreExpressionId="isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_yGpysB62EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.closeAll" label="%command.label.0" command="_MrLPsB62EeePLJ5to5QrXQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_KSpoYB7SEeeC-JvycL9ysA" coreExpressionId="isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_BmuOUB63EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.menuseparator.3"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_jE5VoB60EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.import" label="%command.label.3" command="_dlo3oB60EeePLJ5to5QrXQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_0UicAB61EeePLJ5to5QrXQ" coreExpressionId="isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_xT7KsB61EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.export" label="%command.label.4" command="_CYHrgB62EeePLJ5to5QrXQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_21J-oB61EeePLJ5to5QrXQ" coreExpressionId="isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_XE1yMB62EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.menuseparator.1"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_YM8CsB62EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.save" label="%command.label.1" command="_PkWcQB62EeePLJ5to5QrXQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_MogFcB7SEeeC-JvycL9ysA" coreExpressionId="isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_czNDMB62EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.saveAll" label="%command.label.2" command="_RWLmQB62EeePLJ5to5QrXQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_PVsrgB7SEeeC-JvycL9ysA" coreExpressionId="isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_gBC4MB62EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.filemenu.io"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_jC1OMB62EeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.exit" label="%command.label.5" command="_TvLd8B62EeePLJ5to5QrXQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_Q9yDoB7SEeeC-JvycL9ysA" coreExpressionId="isCdmStoreConnected"/>
+        </children>
+      </children>
+      <children xsi:type="menu:Menu" xmi:id="__9a5wB6sEeePLJ5to5QrXQ" elementId="org.eclipse.ui.main.menu.edit" toBeRendered="false" visible="false" label="%menu.label.0"/>
+      <children xsi:type="menu:Menu" xmi:id="_BFCCEB6tEeePLJ5to5QrXQ" elementId="org.eclipse.ui.main.menu.window" label="%menu.label.1">
+        <children xsi:type="menu:MenuSeparator" xmi:id="_zfx_cB7PEeeC-JvycL9ysA" elementId="eu.etaxonomy.taxeditor.application.windowMenu.last"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_35iN8B7PEeeC-JvycL9ysA" elementId="org.eclipse.ui.main.menu.window.preferences" label="%command.label.12" command="_l9kXoB7PEeeC-JvycL9ysA"/>
+      </children>
+      <children xsi:type="menu:Menu" xmi:id="_KDFiMB6tEeePLJ5to5QrXQ" elementId="org.eclipse.ui.main.menu.admin" label="%menu.label.4">
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_RsV7EB-IEeeIA_2gwq7JKg" elementId="org.eclipse.ui.main.menu.admin.dbpreferences" label="%command.label.23" command="_JXXNIB-IEeeIA_2gwq7JKg">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_ckfJUB-IEeeIA_2gwq7JKg" coreExpressionId="hasROLE_PROJECT_MANAGER_AND_isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_VgPDcB-IEeeIA_2gwq7JKg" elementId="org.eclipse.ui.main.menu.admin.dbrepair" label="%command.label.24" command="_LuEl0B-IEeeIA_2gwq7JKg">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_06_ZIB-TEeeIA_2gwq7JKg" coreExpressionId="hasROLE_PROJECT_MANAGER_AND_isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_E80JgCaQEeeO2YpaECSmsg" elementId="org.eclipse.ui.main.menu.admin.import_preferences" label="Import Preferences"/>
+      </children>
+      <children xsi:type="menu:Menu" xmi:id="_MG8QUB6tEeePLJ5to5QrXQ" elementId="org.eclipse.ui.main.menu.help" label="%menu.label.2">
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_6vgg4B6gEeePLJ5to5QrXQ" elementId="id.commandlabel16" label="%command.label.16" command="_ye6jsB6gEeePLJ5to5QrXQ"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_i-R80B6fEeePLJ5to5QrXQ" elementId="id.commandlabel20" label="%command.label.20" command="_V9LTcB6eEeePLJ5to5QrXQ"/>
+      </children>
+    </elements>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_vvQmIB4JEeehWtOSgLepjA" featurename="handlers" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="commands:Handler" xmi:id="_haDmcB6eEeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.OpenExternalAboutPlatformHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.application/eu.etaxonomy.taxeditor.OpenExternalAboutPlatformHandler" command="_V9LTcB6eEeePLJ5to5QrXQ"/>
+    <elements xsi:type="commands:Handler" xmi:id="_3wxe4B6gEeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.OpenExternalParserHelpHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.application/eu.etaxonomy.taxeditor.OpenExternalParserHelpHandler" command="_ye6jsB6gEeePLJ5to5QrXQ"/>
+    <elements xsi:type="commands:Handler" xmi:id="_cwy_oB-LEeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.handler.OpenDatabaseRepairWizardHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.handler.OpenDatabaseRepairWizardHandler" command="_LuEl0B-IEeeIA_2gwq7JKg"/>
+    <elements xsi:type="commands:Handler" xmi:id="_pZ84gB-LEeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.handler.OpenDatabasePreferencesWizardHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.handler.OpenDatabasePreferencesWizardHandler" command="_JXXNIB-IEeeIA_2gwq7JKg"/>
+    <elements xsi:type="commands:Handler" xmi:id="_fAnCkCaQEeeO2YpaECSmsg" elementId="eu.etaxonomy.taxeditor.handler.OpenImportPreferenceHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/target.classes.eu.etaxonomy.taxeditor.handler.OpenImportPreferenceHandler" command="_q1JAkCaQEeeO2YpaECSmsg"/>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_1jM6sB4JEeehWtOSgLepjA" featurename="commands" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="commands:Command" xmi:id="_V9LTcB6eEeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.help.aboutPlatform" commandName="%command.name.0"/>
+    <elements xsi:type="commands:Command" xmi:id="_ye6jsB6gEeePLJ5to5QrXQ" elementId="eu.etaxonomy.taxeditor.application.help.parser" commandName="%command.name"/>
+    <elements xsi:type="commands:Command" xmi:id="_dlo3oB60EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.import" commandName="%command.label.3"/>
+    <elements xsi:type="commands:Command" xmi:id="_CYHrgB62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.export" commandName="%command.label.4"/>
+    <elements xsi:type="commands:Command" xmi:id="_LVTo8B62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.close" commandName="%command.label"/>
+    <elements xsi:type="commands:Command" xmi:id="_MrLPsB62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.closeAll" commandName="%command.label.0"/>
+    <elements xsi:type="commands:Command" xmi:id="_PkWcQB62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.save" commandName="%command.label.1"/>
+    <elements xsi:type="commands:Command" xmi:id="_RWLmQB62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.saveAll" commandName="%command.label.2"/>
+    <elements xsi:type="commands:Command" xmi:id="_TvLd8B62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.exit" commandName="%command.label.5"/>
+    <elements xsi:type="commands:Command" xmi:id="_5pfmIB7DEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.undo" commandName="%command.label.6"/>
+    <elements xsi:type="commands:Command" xmi:id="_EarQwB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.redo" commandName="%command.label.7"/>
+    <elements xsi:type="commands:Command" xmi:id="_PhIAwB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.cut" commandName="%command.label.8"/>
+    <elements xsi:type="commands:Command" xmi:id="_RxxNsB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.copy" commandName="%command.label.9"/>
+    <elements xsi:type="commands:Command" xmi:id="_TmIHQB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.paste" commandName="%command.label.10"/>
+    <elements xsi:type="commands:Command" xmi:id="_WOTDYB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.delete" commandName="%command.label.11"/>
+    <elements xsi:type="commands:Command" xmi:id="_l9kXoB7PEeeC-JvycL9ysA" elementId="org.eclipse.ui.window.preferences" commandName="%command.label.12"/>
+    <elements xsi:type="commands:Command" xmi:id="_hooiQB7QEeeC-JvycL9ysA" elementId="org.eclipse.ui.newWizard" commandName="%command.label.21"/>
+    <elements xsi:type="commands:Command" xmi:id="_JXXNIB-IEeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.application.DatabaseSettings" commandName="%command.label.23"/>
+    <elements xsi:type="commands:Command" xmi:id="_LuEl0B-IEeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.application.DatabaseRepairFunctionality" commandName="%command.label.24"/>
+    <elements xsi:type="commands:Command" xmi:id="_q1JAkCaQEeeO2YpaECSmsg" elementId="eu.etaxonomy.taxeditor.application.ImportSettings" commandName="%command.label.25"/>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_nOhPoB9zEeeIA_2gwq7JKg" featurename="trimContributions" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="menu:TrimContribution" xmi:id="_FIbzwB92EeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.application.trimcontribution.0" parentId="org.eclipse.ui.main.toolbar" positionInParent="after=additions">
+      <children xsi:type="menu:ToolBar" xmi:id="_KDVngB92EeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.application.toolbar.0">
+        <children xsi:type="menu:HandledToolItem" xmi:id="_KvxPsB92EeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.application.handledtoolitem.xxxx" label="%command.label.21" iconURI="platform:/plugin/org.eclipse.ui/icons/full/etool16/new_wiz.png" command="_hooiQB7QEeeC-JvycL9ysA">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="__HsucB93EeeIA_2gwq7JKg"/>
+        </children>
+        <children xsi:type="menu:HandledToolItem" xmi:id="_ARn5AB96EeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.application.handledtoolitem.commandlabel22" label="%command.label.22" iconURI="platform:/plugin/eu.etaxonomy.taxeditor.store/icons/save_edit.gif" command="_PkWcQB62EeePLJ5to5QrXQ"/>
+      </children>
+    </elements>
+  </fragments>
+</fragment:ModelFragments>
index fdad8b284077acf80629a32ccaf896fece22e5a9..75ac6bd934efdb7ac01e389fe2329100355f621f 100644 (file)
             restorable="true">
       </view>
    </extension-->
-   <extension
-         point="org.eclipse.ui.menus">
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu">
-         <menu
-               id="org.eclipse.ui.main.menu.file"
-               label="%menu.label">
-         </menu>
-         <menu
-               id="org.eclipse.ui.main.menu.edit"
-               label="%menu.label.0">
-         </menu>
-         <menu
-               id="org.eclipse.ui.main.menu.window"
-               label="%menu.label.1">
-         </menu>
-          <menu
-               id="org.eclipse.ui.main.menu.admin"
-               label="%menu.label.4">
-         </menu>
-         <menu
-               id="org.eclipse.ui.main.menu.help"
-               label="%menu.label.2">
-         </menu>
-        
-      </menuContribution>
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu.file">
-         <menu
-               id="eu.etaxonomy.navigation.menu.new"
-               label="%menu.label.3">
-         </menu>
-         <separator
-               name="eu.etaxonomy.taxeditor.application.filemenu.new"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.file.close"
-               label="%command.label"
-               style="push">
-         </command>
-         <command
-               commandId="org.eclipse.ui.file.closeAll"
-               label="%command.label.0"
-               style="push">
-         </command>
-         <separator
-               name="eu.etaxonomy.taxeditor.application.filemenu.close"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.file.save"
-               label="%command.label.1"
-               style="push">
-         </command>
-         <command
-               commandId="org.eclipse.ui.file.saveAll"
-               label="%command.label.2"
-               style="push">
-         </command>
-         <separator
-               name="eu.etaxonomy.taxeditor.application.filemenu.save"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.file.import"
-               label="%command.label.3"
-               style="push">
-            <visibleWhen
-                  checkEnabled="true">
-               <reference
-                     definitionId="isCdmStoreConnected">
-               </reference>
-            </visibleWhen>
-         </command>
-         <command
-               commandId="org.eclipse.ui.file.export"
-               label="%command.label.4"
-               style="push">
-            <visibleWhen
-                  checkEnabled="true">
-               <reference
-                     definitionId="isCdmStoreConnected">
-               </reference>
-            </visibleWhen>
-         </command>
-         <separator
-               name="eu.etaxonomy.taxeditor.application.filemenu.io"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.file.exit"
-               id="eu.etaxonomy.taxeditor.application.menu.exit"
-               label="%command.label.5"
-               style="push">
-         </command>
-      </menuContribution>
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu.edit">
-         <command
-               commandId="org.eclipse.ui.edit.undo"
-               label="%command.label.6">
-         </command>
-         <command
-               commandId="org.eclipse.ui.edit.redo"
-               label="%command.label.7"
-               style="push">
-         </command>
-         <separator
-               name="eu.etaxonomy.taxeditor.ui.edit.separator1"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.edit.cut"
-               label="%command.label.8"
-               style="push">
-         </command>
-         <command
-               commandId="org.eclipse.ui.edit.copy"
-               label="%command.label.9"
-               style="push">
-         </command>
-         <command
-               commandId="org.eclipse.ui.edit.paste"
-               label="%command.label.10"
-               style="push">
-         </command>
-         <separator
-               name="eu.etaxonomy.taxeditor.ui.edit.separator2"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.edit.delete"
-               label="%command.label.11"
-               style="push">
-         </command>
-      </menuContribution>
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu.window">
-         <separator
-               name="eu.etaxonomy.taxeditor.application.windowMenu.last"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.window.preferences"
-               label="%command.label.12"
-               style="push">
-         </command>
-      </menuContribution>
-      <menuContribution
-            allPopups="false"
-            locationURI="menu:org.eclipse.ui.main.menu.admin">
-         <command
-               commandId="eu.etaxonomy.taxeditor.application.DatabaseSettings"
-               label="%command.label.23"
-               style="push">
-            <visibleWhen
-                  checkEnabled="true">
-               <and>
-                  <reference
-                        definitionId="hasROLE_PROJECT_MANAGER">
-                  </reference>
-                  <reference
-                        definitionId="isCdmStoreConnected">
-                  </reference>
-               </and>
-            </visibleWhen>
-         </command>
-         <command
-               commandId="eu.etaxonomy.taxeditor.application.DatabaseRepairFunctionality"
-               label="%command.label.24"
-               style="push">
-                <visibleWhen
-                  checkEnabled="true">
-               <and>
-                  <reference
-                        definitionId="hasROLE_PROJECT_MANAGER">
-                  </reference>
-                  <reference
-                        definitionId="isCdmStoreConnected">
-                  </reference>
-               </and>
-            </visibleWhen>
-         </command>
-         <dynamic
-               class="eu.etaxonomy.taxeditor.admin.UserGroupContributionItem"
-               id="eu.etaxonomy.taxeditor.admin.UserGroupContributionItem">
-            <visibleWhen
-                  checkEnabled="true">
-               <and>
-                  <reference
-                        definitionId="hasROLE_PROJECT_MANAGER">
-                  </reference>
-                  <reference
-                        definitionId="isCdmStoreConnected">
-                  </reference>
-               </and>
-            </visibleWhen>
-         </dynamic>
-      </menuContribution>
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu.help">
-         <command
-               commandId="org.eclipse.ui.help.helpContents"
-               label="%command.label.13"
-               style="push">
-         </command>
-         <command
-               commandId="org.eclipse.ui.help.helpSearch"
-               label="%command.label.14"
-               style="push">
-         </command>
-         <separator
-               name="eu.etaxonomy.taxeditor.ui.help.separator0"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.help.dynamicHelp"
-               label="%command.label.15"
-               style="push">
-         </command>
-         <command
-               commandId="eu.etaxonomy.taxeditor.application.help.parser"
-               label="%command.label.16"
-               style="push">
-         </command>
-         <separator
-               name="eu.etaxonomy.taxeditor.ui.help.separator1"
-               visible="true">
-         </separator>
-         <!--command
-               commandId="eu.etaxonomy.taxeditor.install"
-               label="%command.label.18"
-               style="push"/-->
-         <command
-               commandId="eu.etaxonomy.taxeditor.update"
-               label="%command.label.17"
-               style="push"/>    
-         <separator
-               name="eu.etaxonomy.taxeditor.ui.help.separator2"
-               visible="true">
-         </separator>
-         <command
-               commandId="org.eclipse.ui.help.aboutAction"
-               label="%command.label.19">
-         </command>
-         <command
-               commandId="eu.etaxonomy.taxeditor.application.help.aboutPlatform"
-               label="%command.label.20"
-               style="push">
-         </command>
-      </menuContribution>
-            <menuContribution
-            locationURI="toolbar:org.eclipse.ui.main.toolbar">
-         <toolbar
-               id="eu.etaxonomy.taxeditor.editor.main">
-            <command
-                  commandId="org.eclipse.ui.newWizard"
-                  label="%command.label.21"
-                  style="push">
-            </command>
-            <command
-                  commandId="org.eclipse.ui.file.save"
-                  label="%command.label.22"
-                  style="push">
-            </command>
-         </toolbar>
-      </menuContribution>
-   </extension>
    <extension
          id="product"
          point="org.eclipse.core.runtime.products">
          </property>
       </product>
    </extension>
-   <extension
-         point="org.eclipse.ui.commands">
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.OpenExternalParserHelpHandler"
-            id="eu.etaxonomy.taxeditor.application.help.parser"
-            name="%command.name">
-      </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.OpenExternalAboutPlatformHandler"
-            id="eu.etaxonomy.taxeditor.application.help.aboutPlatform"
-            name="%command.name.0">
-      </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.update.UpdateHandler"
-            id="eu.etaxonomy.taxeditor.update"
-            name="%command.label.17">
-      </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.update.InstallNewSoftwareHandler"
-            id="eu.etaxonomy.taxeditor.install"
-            name="%command.label.18">
-      </command>
-   </extension>
    
    
        <extension
        </property>
     </product>
  </extension>
+ <extension
+       point="org.eclipse.ui.actionSets">
+    <actionSet
+          id="org.eclipse.ui.edit.text.actionSet.annotationNavigation"
+          label="Annotation Navigation"
+          visible="false">
+    </actionSet>
+    <actionSet
+          id="org.eclipse.ui.edit.text.actionSet.navigation"
+          label="Editor Navigation"
+          visible="false">
+    </actionSet>
+ </extension>
 
 </plugin>
index 37f5f9de571870daeb102d12c993e755c3c54cc1..09aa01c11d26066d5ed08ed1a228e3da58dae23e 100644 (file)
@@ -3,7 +3,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0</version>
   </parent>
 
   <modelVersion>4.0.0</modelVersion>
diff --git a/eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/admin/UserGroupContributionItem.java b/eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/admin/UserGroupContributionItem.java
deleted file mode 100644 (file)
index 4b99ceb..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2017 EDIT
-* European Distributed Institute of Taxonomy
-* http://www.e-taxonomy.eu
-*
-* The contents of this file are subject to the Mozilla Public License Version 1.1
-* See LICENSE.TXT at the top of this package for the full license terms.
-*/
-package eu.etaxonomy.taxeditor.admin;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.jface.action.IContributionItem;
-
-import eu.etaxonomy.taxeditor.bulkeditor.command.OpenBulkEditorContributionItem;
-import eu.etaxonomy.taxeditor.bulkeditor.input.BulkEditorInputType;
-
-/**
- * @author pplitzner
- * @date Mar 9, 2017
- *
- */
-public class UserGroupContributionItem extends OpenBulkEditorContributionItem {
-
-    /** {@inheritDoc} */
-    @Override
-    protected IContributionItem[] getContributionItems() {
-        List<IContributionItem> contributionItems = new ArrayList<IContributionItem>();
-        contributionItems.add(BulkEditorInputType.USER.createContributionItem());
-        contributionItems.add(BulkEditorInputType.GROUP.createContributionItem());
-        return contributionItems.toArray(new IContributionItem[contributionItems.size()]);
-    }
-}
diff --git a/eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/perspective/BulkEditing.java b/eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/perspective/BulkEditing.java
deleted file mode 100644 (file)
index d40480c..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * 
- */
-package eu.etaxonomy.taxeditor.perspective;
-
-import org.eclipse.ui.IPageLayout;
-
-import eu.etaxonomy.taxeditor.bulkeditor.referencingobjects.ReferencingObjectsView;
-import eu.etaxonomy.taxeditor.view.detail.DetailsViewPart;
-import eu.etaxonomy.taxeditor.view.supplementaldata.SupplementalDataViewPart;
-
-/**
- * @author n.hoffmann
- *
- */
-public class BulkEditing extends Default {
-
-       /* (non-Javadoc)
-        * @see org.eclipse.ui.IPerspectiveFactory#createInitialLayout(org.eclipse.ui.IPageLayout)
-        */
-       @Override
-       public void createInitialLayout(IPageLayout layout) {
-               
-               layout.addView(DetailsViewPart.ID, IPageLayout.RIGHT, 0.5f, layout.getEditorArea());
-               
-               layout.addView(SupplementalDataViewPart.ID, IPageLayout.BOTTOM, 0.3f, DetailsViewPart.ID);
-               
-               layout.addView(ReferencingObjectsView.ID, IPageLayout.BOTTOM, 0.3f, SupplementalDataViewPart.ID);
-               
-               createAdditionalFolder(layout, layout.getEditorArea());
-       }
-
-}
index da44bf1e7d2f5d2b0ca235db4edec6a7516feafd..d62253534ec5211dc98ed760de23db016ed2e952 100644 (file)
@@ -9,7 +9,6 @@
 package eu.etaxonomy.taxeditor.perspective;
 
 import org.eclipse.ui.IPageLayout;
-import org.eclipse.ui.IPlaceholderFolderLayout;
 import org.eclipse.ui.progress.IProgressConstants;
 
 import eu.etaxonomy.taxeditor.editor.view.descriptive.DescriptiveViewPart;
@@ -24,10 +23,6 @@ import eu.etaxonomy.taxeditor.view.detail.DetailsViewPart;
  */
 public class DerivatePerspective extends Default {
 
-    protected IPlaceholderFolderLayout folderAdditional;
-
-    public static final String ADDITIONAL = "additional";
-
     @Override
     public void createInitialLayout(IPageLayout layout) {
         layout.addView(TaxonNavigator.ID, IPageLayout.LEFT, 0.25f, layout.getEditorArea());
index e39cdb618a58acb3368adebc820d6b6a5ada5277..dcc0a844975d89f94012e46936682899cc187cc3 100644 (file)
@@ -79,7 +79,7 @@ public class P2Util {
         repoElements.addAll(savedRepoElements);
 
         ElementUtils.updateRepositoryUsingElements(ProvisioningUI.getDefaultUI(),repoElements
-                .toArray(new MetadataRepositoryElement[]{} ), null);
+                .toArray(new MetadataRepositoryElement[]{} ));
 
     }
 
index 084a95da97f7e9c1a78fcde16e454604753a731d..439bea96975af18476a9728b7ca0e3215d94f6b6 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Bulkeditor Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.bulkeditor;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Bundle-Activator: eu.etaxonomy.taxeditor.bulkeditor.internal.TaxeditorBulkeditorPlugin
 Bundle-Vendor: EDIT
 Export-Package: eu.etaxonomy.taxeditor.annotatedlineeditor,
@@ -13,14 +13,16 @@ Export-Package: eu.etaxonomy.taxeditor.annotatedlineeditor,
  eu.etaxonomy.taxeditor.bulkeditor.input,
  eu.etaxonomy.taxeditor.bulkeditor.internal,
  eu.etaxonomy.taxeditor.bulkeditor.referencingobjects
-Require-Bundle: org.eclipse.ui,
+Require-Bundle: eu.etaxonomy.taxeditor.workbench,
+ org.eclipse.ui,
  org.eclipse.core.runtime,
  org.eclipse.ui.editors,
  org.eclipse.core.expressions,
  eu.etaxonomy.taxeditor.store,
- eu.etaxonomy.taxeditor.cdmlib
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Bundle-ActivationPolicy: lazy
+ eu.etaxonomy.taxeditor.cdmlib,
+ org.eclipse.e4.ui.model.workbench;bundle-version="1.2.0.v20160229-1459",
+ org.eclipse.e4.ui.workbench
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Import-Package: eu.etaxonomy.taxeditor.editor,
  org.eclipse.core.runtime,
  org.eclipse.equinox.app,
@@ -31,3 +33,4 @@ Import-Package: eu.etaxonomy.taxeditor.editor,
  org.eclipse.jface.text.source,
  org.eclipse.ui.views.properties,
  org.osgi.framework
+Bundle-ActivationPolicy: lazy
index 1db7f651df6d3d3d1fcce9ceb535e5c42dfbf75f..45e622ab14bb8b413123c6679e7c88b233660d6d 100644 (file)
@@ -35,4 +35,6 @@ command.label.OPEN_REFERENCING_OBJECTS_VIEW = Referencing Objects View
 command.name.OPEN_REFERENCING_OBJECTS_VIEW = Open Referencing Objects View
 command.name.OPEN_BULK_EDITOR_FOR_TAXON_NODE = Open bulk editor for taxon  node
 viewCommandMapping.viewerName.REFERENCING_OBJECTS_VIEW = Referencing Objects View
-viewCommandMapping.viewerName.BULK_EDITOR = Bulk Editor
\ No newline at end of file
+viewCommandMapping.viewerName.BULK_EDITOR = Bulk Editor
+handledmenuitem.label.1 = Users
+handledmenuitem.label.2 = Groups
index 96df15ab646195e4c529ec90e49cbd63c7cc0a79..5c0c9847fb5ad313a5376d0e0852fb0131c2d2cf 100644 (file)
@@ -35,4 +35,6 @@ command.label.OPEN_REFERENCING_OBJECTS_VIEW = Referenzierende Objekte
 command.name.OPEN_REFERENCING_OBJECTS_VIEW = Ã–ffne Referenzierende Objekte
 command.name.OPEN_BULK_EDITOR_FOR_TAXON_NODE = Ã–ffne Bulk Editor für Taxonknoten
 viewCommandMapping.viewerName.REFERENCING_OBJECTS_VIEW = Referenzierende Objekte
-viewCommandMapping.viewerName.BULK_EDITOR = Bulk Editor
\ No newline at end of file
+viewCommandMapping.viewerName.BULK_EDITOR = Bulk Editor
+handledmenuitem.label.1 = Nutzer
+handledmenuitem.label.2 = Nutzergruppen
\ No newline at end of file
index bc338967aa7f1bdfdfb95ed764e0455fac878273..15f137137a80719d05b1b1c5e2aa081e78160dda 100644 (file)
@@ -8,5 +8,6 @@ bin.includes = META-INF/,\
                OSGI-INF/l10n/bundle.properties,\\r
                OSGI-INF/l10n/bundle_de.properties,\\r
                src/main/java/eu/etaxonomy/taxeditor/l10n/messages.properties,\\r
-               src/main/java/eu/etaxonomy/taxeditor/l10n/messages_de.properties\r
+               src/main/java/eu/etaxonomy/taxeditor/l10n/messages_de.properties,\\r
+               fragment.e4xmi\r
                
\ No newline at end of file
diff --git a/eu.etaxonomy.taxeditor.bulkeditor/fragment.e4xmi b/eu.etaxonomy.taxeditor.bulkeditor/fragment.e4xmi
new file mode 100644 (file)
index 0000000..05f6c0e
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="ASCII"?>
+<fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:commands="http://www.eclipse.org/ui/2010/UIModel/application/commands" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmlns:menu="http://www.eclipse.org/ui/2010/UIModel/application/ui/menu" xmlns:ui="http://www.eclipse.org/ui/2010/UIModel/application/ui" xmi:id="_i8pkACAyEeeepOgM49meig">
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_HJWmwCAzEeeepOgM49meig" featurename="commands" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="commands:Command" xmi:id="_Kc-ToCAzEeeepOgM49meig" elementId="taxeditor-bulkeditor.dynamicopenmenu" commandName="%command.name.1">
+      <parameters xmi:id="_PWg1cCAzEeeepOgM49meig" elementId="taxeditor-bulkeditor.commandParameter.inputType" name="Bulk Editor Class" optional="false"/>
+    </elements>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_l_8NMCQUEeelPNxAg-e3TA" featurename="children" parentElementId="eu.etaxonomy.taxeditor.workbench.menu.admin">
+    <elements xsi:type="menu:MenuSeparator" xmi:id="_zph3kDF2Eee-JvlKXQGppA" elementId="eu.etaxonomy.taxeditor.bulkeditor.menuseparator.0"/>
+    <elements xsi:type="menu:HandledMenuItem" xmi:id="_pgPrMCQUEeelPNxAg-e3TA" elementId="eu.etaxonomy.taxeditor.bulkeditor.menu.admin.bulk_users" label="%handledmenuitem.label.1" command="_Kc-ToCAzEeeepOgM49meig">
+      <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_4YPk8CQ6EeeKsvEah5BAoQ" coreExpressionId="hasROLE_PROJECT_MANAGER_AND_isCdmStoreConnected"/>
+      <parameters xmi:id="_7uF7sCQUEeelPNxAg-e3TA" elementId="eu.etaxonomy.taxeditor.bulkeditor.menu.admin.userBulk.userParam" name="taxeditor-bulkeditor.commandParameter.inputType" value="bulkeditor.input.user"/>
+    </elements>
+    <elements xsi:type="menu:HandledMenuItem" xmi:id="_pNpDACQ6EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.bulkeditor.menu.admin.bulk_groups" label="%handledmenuitem.label.2" command="_Kc-ToCAzEeeepOgM49meig">
+      <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_6CFQkCQ6EeeKsvEah5BAoQ" coreExpressionId="hasROLE_PROJECT_MANAGER_AND_isCdmStoreConnected"/>
+      <parameters xmi:id="_pNpDASQ6EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.bulkeditor.menu.admin.groupBulk.groupParam" name="taxeditor-bulkeditor.commandParameter.inputType" value="bulkeditor.input.group"/>
+    </elements>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_gHUPICkFEeeCvszP-_feIA" featurename="children" parentElementId="eu.etaxonomy.taxeditor.workbench.menu.window" positionInList="first">
+    <elements xsi:type="menu:Menu" xmi:id="_jpxCMCkFEeeCvszP-_feIA" elementId="bulkeditor.menus.openmenu" label="%menu.label" mnemonics="">
+      <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_nae6wCkFEeeCvszP-_feIA" coreExpressionId="isCdmStoreConnected"/>
+    </elements>
+  </fragments>
+</fragment:ModelFragments>
index 6983d4811e1d9c551badcf421ab1943b4b3a0f96..6d4d10b8732c615a5c186a3f15ac4f25cabc2974 100644 (file)
    </extension>
    <extension
          point="org.eclipse.ui.menus">
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu.window?before=eu.etaxonomy.taxeditor.application.windowMenu.last">
-         <menu
-               id="bulkeditor.menus.openmenu"
-               label="%menu.label">
-            <visibleWhen
-                  checkEnabled="true">
-               <reference
-                     definitionId="isCdmStoreConnected">
-               </reference>
-            </visibleWhen>
-         </menu>
-         <menu
-               label="%menu.label.0">
-            <visibleWhen
-                  checkEnabled="true">
-               <reference
-                     definitionId="isCdmStoreConnected">
-               </reference>
-            </visibleWhen>
-         </menu>
-      </menuContribution>
       <menuContribution
             locationURI="menu:bulkeditor.menus.openmenu">
          <dynamic
       </menuContribution>
       <menuContribution
             allPopups="false"
-            locationURI="menu:eu.etaxonomy.taxeditor.menu.showView?after=org.eclipse.ui.views.showView.supplemental">
+            locationURI="menu:eu.etaxonomy.taxeditor.menu.showView?after=eu.etaxonomy.taxeditor.store.showViewMenu.supplemental">
+         <separator
+               name="eu.etaxonomy.taxeditor.bulkeditor.separator1"
+               visible="true">
+         </separator>
          <command
                commandId="eu.etaxonomy.taxeditor.openReferencingObjectsViewFromMenu"
                label="%command.label.OPEN_REFERENCING_OBJECTS_VIEW"
             viewerName="%viewCommandMapping.viewerName.BULK_EDITOR">
       </viewCommandMapping>
    </extension>
+   <extension
+         id="id1"
+         point="org.eclipse.e4.workbench.model">
+      <fragment
+            apply="always"
+            uri="fragment.e4xmi">
+      </fragment>
+   </extension>
 <!-- start set marker -->
 
 </plugin>
index c1fc0b2b6c4ee121f05b5d77f875f7d3e89979fd..f3d6dfbff5e8b83184a568411360de92c266bb25 100644 (file)
@@ -3,7 +3,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>4.6.0</version>
+               <version>4.7.0</version>
        </parent>
 
        <modelVersion>4.0.0</modelVersion>
index decdc7e22ce7e97c3bf53ee77bbe8628c602b7bb..4601d246c6a6d98e379b16fa7ded4710d4e5031a 100644 (file)
@@ -1,8 +1,8 @@
 /**
 * Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
@@ -11,8 +11,6 @@ package eu.etaxonomy.taxeditor.annotatedlineeditor;
 
 import java.util.Map;
 
-import eu.etaxonomy.cdm.model.common.ICdmBase;
-
 
 /**
  * <p>IEntityCreator interface.</p>
@@ -22,7 +20,7 @@ import eu.etaxonomy.cdm.model.common.ICdmBase;
  * @version 1.0
  */
 public interface IEntityCreator<T> {
-       
+
        /**
         * <p>createEntity</p>
         *
@@ -31,7 +29,7 @@ public interface IEntityCreator<T> {
         * @return a T object.
         */
        T createEntity(String text);
-       
+
        /**
         * <p>createEntity</p>
         *
@@ -40,21 +38,21 @@ public interface IEntityCreator<T> {
         * @return a T object.
         */
        T createEntity(Object key, String text);
-       
+
        /**
         * Get a map of keys for all objects that can be created by this entity creator
         * along with their string representations.
         *
         * @return a {@link java.util.Map} object.
         */
-       Map<Object, String> getKeyLabelPairs();
-       
+       Map<? extends Object, String> getKeyLabelPairs();
+
        /**
         * Return a flag indicating whether this creator also saves the entities
         *
         * @return true or false
         */
        boolean savesEntity();
-       
+
 
 }
index ecc6c898c0c89fbc3a5299fa57fc5d48296cd99d..2d49f3be1e4dd08bc251a48ee74741563bb52cc5 100644 (file)
@@ -41,7 +41,7 @@ public class DynamicNewObjectMenu extends CompoundContributionItem {
                        .getLogger(DynamicNewObjectMenu.class);
 
        private final IHandlerService handlerService = (IHandlerService) BulkEditorUtil.getService(IHandlerService.class);
-       private Map<Object, String> classLabelPairs;
+       private Map<? extends Object, String> classLabelPairs;
 
        /** {@inheritDoc} */
        @Override
@@ -88,7 +88,7 @@ public class DynamicNewObjectMenu extends CompoundContributionItem {
         * Get class label pairs from Annotated Line Editor's entity creator.
         * @return
         */
-       private Map<Object, String> getClassLabelPairs() {
+       private Map<? extends Object, String> getClassLabelPairs() {
                IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
                if (editor != null){
                        IEditorInput input = editor.getEditorInput();
index cbc2768acb62ada7e82fcebcabda070a8efe0af1..ece5e4b7e4453cf26a2adcf648c9c520fded156b 100644 (file)
@@ -32,6 +32,7 @@ import eu.etaxonomy.cdm.api.service.IReferenceService;
 import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
 import eu.etaxonomy.cdm.api.service.config.MediaDeletionConfigurator;
 import eu.etaxonomy.cdm.api.service.config.NameDeletionConfigurator;
+import eu.etaxonomy.cdm.api.service.config.SpecimenDeleteConfigurator;
 import eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator;
 import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
@@ -51,6 +52,7 @@ import eu.etaxonomy.taxeditor.annotatedlineeditor.LineAnnotation;
 import eu.etaxonomy.taxeditor.annotatedlineeditor.LineAnnotationModel;
 import eu.etaxonomy.taxeditor.bulkeditor.BulkEditor;
 import eu.etaxonomy.taxeditor.bulkeditor.internal.TaxeditorBulkeditorPlugin;
+import eu.etaxonomy.taxeditor.bulkeditor.l10n.Messages;
 import eu.etaxonomy.taxeditor.model.DeleteResultMessagingUtils;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
@@ -66,7 +68,11 @@ public class DeleteHandler extends AbstractHandler {
 
 
 
-       /* (non-Javadoc)
+    private static final String SKIP = "Skip";
+    private static final String DELETE = "Delete";
+    private static final String CONFIRM_DELETION = "Confirm Deletion";
+
+    /* (non-Javadoc)
         * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
         */
        @Override
@@ -103,8 +109,15 @@ public class DeleteHandler extends AbstractHandler {
                                            controller = CdmStore.getCurrentApplicationConfiguration();
                                            if (object instanceof SpecimenOrObservationBase){
                                                IOccurrenceService service = controller.getOccurrenceService();
+                                               config = new SpecimenDeleteConfigurator();
+
+                                DeleteConfiguratorDialog dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), CONFIRM_DELETION,  null,  Messages.BulkEditor_DeleteHandler_reallyDeleteSpecimen, MessageDialog.WARNING, new String[] { DELETE, SKIP }, 0, true);
+                                int result_dialog= dialog.open();
+                                if (result_dialog != Status.OK){
+                                    return null;
+                                }
                                                        if (object != null){
-                                                               result = service.isDeletable(((SpecimenOrObservationBase) object).getUuid(), null);
+                                                               result = service.isDeletable(((SpecimenOrObservationBase) object).getUuid(), config);
                                                                errorMessage = "The specimen or observation ";
 
                                                        }
@@ -124,7 +137,7 @@ public class DeleteHandler extends AbstractHandler {
                                                if (object != null){
                                                    config = new NameDeletionConfigurator();
 
-                                                   DeleteConfiguratorDialog dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), "Confirm Deletion",  null,  "Do you really want to delete the name?\nThis operation is irreversible!", MessageDialog.WARNING, new String[] { "Delete", "Skip" }, 0, true);
+                                                   DeleteConfiguratorDialog dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), CONFIRM_DELETION,  null,  "Do you really want to delete the name?\nThis operation is irreversible!", MessageDialog.WARNING, new String[] { DELETE, SKIP }, 0, true);
                                                    int result_dialog= dialog.open();
                                                    if (result_dialog != Status.OK){
                                                        return null;
@@ -140,7 +153,7 @@ public class DeleteHandler extends AbstractHandler {
                                                                Synonym synonym = HibernateProxyHelper.deproxy(object, Synonym.class);
                                                                config = new SynonymDeletionConfigurator();
                                                                errorMessage = "The synonym ";
-                                                               DeleteConfiguratorDialog dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), "Confirm Deletion",  null,  "Do you really want to delete the synonym?", MessageDialog.WARNING, new String[] { "Delete", "Skip" }, 0, true);
+                                                               DeleteConfiguratorDialog dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), CONFIRM_DELETION,  null,  "Do you really want to delete the synonym?", MessageDialog.WARNING, new String[] { DELETE, SKIP }, 0, true);
                                     int result_dialog= dialog.open();
                                     if (result_dialog != Status.OK){
                                          return null;
@@ -159,7 +172,7 @@ public class DeleteHandler extends AbstractHandler {
                                                                config = new TaxonDeletionConfigurator();
                                                                ((TaxonDeletionConfigurator) config).setDeleteInAllClassifications(true);
                                                                DeleteConfiguratorDialog dialog;
-                                                           dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), "Confirm Deletion",  null,  "Do you really want to delete the taxon?", MessageDialog.WARNING, new String[] { "Delete", "Skip" }, 0, true);
+                                                           dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), CONFIRM_DELETION,  null,  "Do you really want to delete the taxon?", MessageDialog.WARNING, new String[] { DELETE, SKIP }, 0, true);
                                                                int result_dialog= dialog.open();
                                     if (result_dialog != Status.OK){
                                          return null;
@@ -174,7 +187,7 @@ public class DeleteHandler extends AbstractHandler {
                                               config = new MediaDeletionConfigurator();
                                               Media media = HibernateProxyHelper.deproxy(object, Media.class);
                                               DeleteConfiguratorDialog dialog;
-                                                  dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), "Confirm Deletion",  null,  "Do you really want to delete the media?", MessageDialog.WARNING, new String[] { "Delete", "Skip" }, 0, true);
+                                                  dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), CONFIRM_DELETION,  null,  "Do you really want to delete the media?", MessageDialog.WARNING, new String[] { DELETE, SKIP }, 0, true);
                                                   int result_dialog= dialog.open();
                                if (result_dialog != Status.OK){
                                    return null;
index 9464f338766aed782347c24c19b697e83362c7d7..6d00f417120ce8a733e919f39724338acfb37280 100644 (file)
@@ -13,13 +13,14 @@ import java.util.Arrays;
 import java.util.List;
 import java.util.UUID;
 
+import eu.etaxonomy.cdm.api.service.DeleteResult;
 import eu.etaxonomy.cdm.api.service.IOccurrenceService;
 import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
 import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
+import eu.etaxonomy.cdm.api.service.config.SpecimenDeleteConfigurator;
 import eu.etaxonomy.cdm.api.service.exception.ReferencedObjectUndeletableException;
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
-import eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy;
 import eu.etaxonomy.taxeditor.annotatedlineeditor.IEntityCreator;
 import eu.etaxonomy.taxeditor.bulkeditor.IBulkEditorSortProvider;
 import eu.etaxonomy.taxeditor.bulkeditor.input.entitycreator.OccurrenceCreator;
@@ -111,14 +112,23 @@ public class OccurrenceEditorInput extends AbstractBulkEditorInput<SpecimenOrObs
         * @throws ReferencedObjectUndeletableException */
        @Override
     public boolean delete(SpecimenOrObservationBase entity, DeleteConfiguratorBase config ) throws ReferencedObjectUndeletableException {
-               return CdmStore.getService(IOccurrenceService.class).delete(entity) != null;
+           DeleteResult deleteResult;
+           SpecimenDeleteConfigurator specimenConfig;
+           if (config instanceof SpecimenDeleteConfigurator){
+               specimenConfig = (SpecimenDeleteConfigurator)config;
+           }else{
+               specimenConfig = new SpecimenDeleteConfigurator();
+           }
+           deleteResult = CdmStore.getService(IOccurrenceService.class).delete(entity.getUuid(), specimenConfig);
+
+               return deleteResult.isOk();
        }
 
        /** {@inheritDoc} */
        @Override
     public SpecimenOrObservationBase<?> save(SpecimenOrObservationBase entity) {
            return CdmStore.getService(IOccurrenceService.class).merge(entity, true).getMergedEntity();
-          
+
        }
 
        @Override
index 8cb943b83e54437cd233063ba04b74b9f4d8216a..6c6e9a746434223e75ee2f5238d42916067fd389 100644 (file)
@@ -1,16 +1,18 @@
 /**
 * Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
 
 package eu.etaxonomy.taxeditor.bulkeditor.input.entitycreator;
 
-import java.util.HashMap;
+import java.util.Comparator;
+import java.util.List;
 import java.util.Map;
+import java.util.TreeMap;
 
 import eu.etaxonomy.cdm.model.name.Rank;
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
@@ -32,7 +34,8 @@ public class NameCreator implements IEntityCreator<TaxonNameBase> {
         * @see eu.etaxonomy.taxeditor.bulkeditor.IEntityCreator#createEntity(java.lang.String)
         */
        /** {@inheritDoc} */
-       public TaxonNameBase createEntity(String text) {
+    @Override
+    public TaxonNameBase createEntity(String text) {
                TaxonNameBase name = PreferencesUtil.getPreferredNomenclaturalCode().getNewTaxonNameInstance(null);
                name.setTitleCache(text, true);
                //name.setTitleCache(text);
@@ -43,7 +46,8 @@ public class NameCreator implements IEntityCreator<TaxonNameBase> {
         * @see eu.etaxonomy.taxeditor.annotatedlineeditor.IEntityCreator#createEntity(java.lang.Class, java.lang.String)
         */
        /** {@inheritDoc} */
-       public TaxonNameBase createEntity(Object key, String text) {
+    @Override
+    public TaxonNameBase createEntity(Object key, String text) {
                return ParseHandler.parseName(text, (Rank) key);
        }
 
@@ -55,9 +59,14 @@ public class NameCreator implements IEntityCreator<TaxonNameBase> {
         *
         * @return a {@link java.util.Map} object.
         */
-       public Map<Object, String> getKeyLabelPairs() {
-               Map<Object, String> result = new HashMap<Object, String>();
-               for (Rank rank : CdmStore.getTermManager().getPreferredTerms(Rank.class)) {
+        @Override
+    public Map<Rank, String> getKeyLabelPairs() {
+               Map<Rank, String> result = new TreeMap<Rank, String>(
+                (Comparator<Rank>) (o1, o2) -> o2.compareTo(o1)
+        );
+               List<Rank> ranks = CdmStore.getTermManager().getPreferredTerms(Rank.class);
+               //Collections.reverse(ranks);
+               for (Rank rank : ranks) {
                        result.put(rank, rank.getLabel());
                }
                return result;
index 768046e0e0c8085806408be535084bf3e8cdfeb8..3a3cf34a7150708060121a20eb01c2fa731a8eb4 100755 (executable)
@@ -18,6 +18,9 @@ import org.eclipse.osgi.util.NLS;
 public class Messages extends NLS {
     private static final String BUNDLE_NAME = "src/main/java/eu.etaxonomy.taxeditor.bulkeditor.l10n.messages"; //$NON-NLS-1$
     public static String ReferencingObjectsLabelProvider_No_description_available;
+    public static String ConvertPerson2TeamHandler_warning;
+    public static String ConvertPerson2TeamHandler_lable;
+    public static String BulkEditor_DeleteHandler_reallyDeleteSpecimen;
     static {
         // initialize resource bundle
         NLS.initializeMessages(BUNDLE_NAME, Messages.class);
index 5cb5303f6bc05bc65762c10d46f4bf39e6c50ebb..0a3229831a6989471762892eb62bbd850fa09a26 100755 (executable)
@@ -1 +1,4 @@
 ReferencingObjectsLabelProvider_No_description_available=No description available
+ConvertPerson2TeamHandler_warning=While reloading the data an exception occured
+ConvertPerson2TeamHandler_lable=Convert Person to Team
+BulkEditor_DeleteHandler_reallyDeleteSpecimen=Do you really want to delete the specimen/field unit? This is irreversible.
\ No newline at end of file
index bfcb11a4ef9d2257e5d422850fcc0c7d2dd04905..916de6b91115ce6e1470388d056987a655fbd69b 100755 (executable)
@@ -1 +1,4 @@
-ReferencingObjectsLabelProvider_No_description_available=Keine Beschreibung verfügbar
\ No newline at end of file
+ReferencingObjectsLabelProvider_No_description_available=Keine Beschreibung verfügbar
+ConvertPerson2TeamHandler_warning=Beim Neuladen der Daten ist ein Fehler aufgetreten
+ConvertPerson2TeamHandler_lable=Wandle Person in Team um
+BulkEditor_DeleteHandler_reallyDeleteSpecimen=Möchten Sie das Specimen/die FieldUnit wirklich löschen, dieser Vorgang kann nicht rückgängig gemacht werden.
\ No newline at end of file
index 64c2e14e33798e3881564bb02294319228e01607..70768f7412ae17479e43ca467d8d759d6608d891 100644 (file)
@@ -1,21 +1,65 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
-       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
-       <classpathentry kind="src" path="src/main/java"/>
-       <classpathentry kind="src" path="src/main/resources"/>
-       <classpathentry exported="true" kind="lib" path="lib/activation-1.1.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/lucene-suggest-5.4.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/lucene-sandbox-5.4.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/lucene-analyzers-common-5.4.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/lucene-analyzers-3.6.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/lucene-queryparser-5.4.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/istack-commons-runtime-2.21.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/istack-commons-tools-2.21.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/lucene-core-5.4.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/antlr-2.7.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/aopalliance-1.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/apache-log4j-extras-1.2.17.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/aspectjrt-1.8.8.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/aspectjweaver-1.8.8.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/avro-1.6.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cglib-3.2.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cglib-nodep-3.2.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/classmate-1.3.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/codemodel-2.2.11.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/concurrent-1.3.4.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/easymock-2.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/easymockclassextension-2.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/FastInfoset-1.2.13.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/fop-1.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/guava-19.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/libthrift-0.9.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/lsid-server-1.1.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/mapstruct-1.0.0.Final.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/mchange-commons-java-0.2.11.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/mysql-connector-java-5.1.38.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/objenesis-1.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/odfdom-0.8.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/odfdom-java-0.8.7.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/ognl-2.6.9.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/paranamer-2.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/poi-3.13.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/poi-ooxml-3.13.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/poi-ooxml-schemas-3.13.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/postgresql-9.4-1206-jdbc4.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/relaxngDatatype-20020414.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/rngom-2.2.11.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/Saxon-HE-9.7.0-2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/servlet-api-2.5.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/snappy-java-1.0.4.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/solr-analysis-extras-3.6.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/solr-core-3.6.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/solr-solrj-3.6.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-core-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-database-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-dbmaintainer-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-dbunit-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-easymock-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-inject-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-mock-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-orm-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-spring-3.4.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/c3p0-0.9.5.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/slf4j-api-1.7.13.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/slf4j-log4j12-1.7.13.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/slf4j-nop-1.7.13.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-anim-1.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-awt-util-1.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-bridge-1.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-css-1.7.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/batik-dom-1.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-ext-1.8.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-extension-1.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-gvt-1.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-svggen-1.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-transcoder-1.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-util-1.7.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/batik-dom-1.7.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jackson-core-asl-1.8.8.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jackson-mapper-asl-1.8.8.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jakarta-regexp-1.4.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jandex-2.0.0.Final.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/javassist-3.20.0-GA.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/javax.el-2.2.6.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/javax.el-api-2.2.5.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/javax.servlet-api-3.1.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jaxb-api-2.2.12.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jaxb-core-2.2.11.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jaxb-jxc-2.2.11.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jaxb-runtime-2.2.11.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jaxb-xjc-2.2.11.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jaxb1-impl-2.2-EA.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jaxen-1.1.4.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jaxen-1.1.6.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jcl-over-slf4j-1.7.6.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jena-arq-2.13.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jena-core-2.13.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jena-iri-1.1.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jena-tdb-1.1.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/json-20090211.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/json-lib-2.4-jdk15.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jsonld-java-0.5.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jsr250-api-1.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jta-1.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jtds-1.3.1.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/junit-benchmarks-0.7.2.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jackson-databind-2.6.5.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/junit-4.12.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/jdbc4-2.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/opencsv-2.3.jar"/>
+       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+       <classpathentry kind="src" path="src/main/java"/>
+       <classpathentry kind="src" path="src/main/resources"/>
+       <classpathentry exported="true" kind="lib" path="lib/apache-log4j-extras-1.2.17.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/aspectjrt-1.8.8.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/aspectjweaver-1.8.8.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/batik-xml-1.7.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/c3p0-0.9.5.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-test-4.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cglib-3.2.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cglib-nodep-3.2.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/classmate-1.3.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/codemodel-2.2.11.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-4.7.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-4.7.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-4.7.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-4.7.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-4.7.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-4.7.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-4.7.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-4.7.0.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-test-4.7.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/com.springsource.org.aopalliance-1.0.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/com.springsource.org.apache.commons.logging-1.1.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/commons-beanutils-1.9.2.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/commons-lang3-3.3.2.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/commons-logging-1.2.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/commons-pool-1.5.4.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/concurrent-1.3.4.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/dbunit-2.4.9.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/dom4j-1.6.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/doxia-core-1.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/doxia-logging-api-1.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/doxia-module-apt-1.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/doxia-module-xhtml-1.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/doxia-sink-api-1.6.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/dozer-5.3.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/dtd-parser-1.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/easymock-2.3.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/easymockclassextension-2.3.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/ehcache-core-2.6.11.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/ezmorph-1.0.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/FastInfoset-1.2.13.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/fop-1.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/google-api-translate-java-0.92.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/guava-19.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/h2-1.4.190.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/h2mig_pagestore_addon.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/hamcrest-core-1.3.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/httpmime-4.5.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/icu4j-2.6.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/identificationKeyAPI-1.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/istack-commons-runtime-2.21.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/istack-commons-tools-2.21.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/itextpdf-5.5.8.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/jackson-annotations-2.6.5.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/jackson-core-2.6.5.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jackson-core-asl-1.8.8.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jackson-databind-2.6.5.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jackson-mapper-asl-1.8.8.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jakarta-regexp-1.4.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jandex-2.0.0.Final.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/javassist-3.20.0-GA.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/javax.el-2.2.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/javax.el-api-2.2.5.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/javax.servlet-api-3.1.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jaxb-api-2.2.12.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jaxb-core-2.2.11.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jaxb-jxc-2.2.11.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jaxb-runtime-2.2.11.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jaxb-xjc-2.2.11.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jaxb1-impl-2.2-EA.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jaxen-1.1.4.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jaxen-1.1.6.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/jboss-logging-3.3.0.Final.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jcl-over-slf4j-1.7.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jdbc4-2.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/jdom-1.1.3.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/jdom2-2.0.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jena-arq-2.13.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jena-core-2.13.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jena-iri-1.1.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jena-tdb-1.1.2.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/joda-time-2.9.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/json-20090211.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/json-lib-2.4-jdk15.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jsonld-java-0.5.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jsr250-api-1.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jta-1.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jtds-1.3.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/junit-4.12.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/junit-benchmarks-0.7.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/libthrift-0.9.2.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/log4j-1.2.17.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/lsid-client-1.1.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lsid-server-1.1.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-analyzers-common-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-backward-codecs-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-core-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-facet-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-grouping-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-highlighter-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-join-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-memory-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-misc-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-queries-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-queryparser-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-sandbox-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-suggest-5.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/mapstruct-1.0.0.Final.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/mchange-commons-java-0.2.11.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/mysql-connector-java-5.1.38.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/objenesis-1.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/odfdom-0.8.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/odfdom-java-0.8.7.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/ognl-2.6.9.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/opencsv-2.3.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/org.osgi.core-1.0.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/osgi-3.6.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/paranamer-2.3.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/plexus-classworlds-1.2-alpha-9.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/plexus-component-annotations-1.5.5.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/plexus-container-default-1.0-alpha-30.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/plexus-utils-3.0.15.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/poi-3.13.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/poi-ooxml-3.13.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/poi-ooxml-schemas-3.13.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/postgresql-9.4-1206-jdbc4.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/relaxngDatatype-20020414.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/rngom-2.2.11.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/sanselan-0.97-incubator.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/Saxon-HE-9.7.0-2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/servlet-api-2.5.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/slf4j-api-1.7.13.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/slf4j-log4j12-1.7.13.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/slf4j-nop-1.7.13.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/snappy-java-1.0.4.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/solr-analysis-extras-3.6.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/solr-core-3.6.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/solr-solrj-3.6.2.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/spring-aop-4.2.4.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/spring-aspects-4.2.4.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/spring-beans-4.2.4.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/springfox-swagger-common-2.3.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/springfox-swagger2-2.3.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/standard-1.1.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/stax-1.2.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/stax-api-1.0.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/stax-ex-1.7.7.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/swagger-annotations-1.5.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/swagger-models-1.5.5.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/tools.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/txw2-2.2.11.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-core-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-database-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-dbmaintainer-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-dbunit-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-easymock-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-inject-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-mock-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-orm-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-spring-3.4.2.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/usertype.jodatime-2.0.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/usertype.spi-2.0.1.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/validation-api-1.1.0.Final.jar"/>
index d7092d24928e01238a4acb4e3f18fe81cdb29556..9bd5bac6493932f792187ca139578e6e5478f0a4 100644 (file)
@@ -2,11 +2,17 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: CDM Library Dependencies Plugin
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.cdmlib;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Eclipse-BundleShape: dir
 Export-Package: com.google.api,
  com.google.api.detect,
  com.google.api.translate,
+ com.sun.istack,
+ com.sun.istack.internal.tools,
+ com.sun.istack.internal.ws,
+ com.sun.istack.localization,
+ com.sun.istack.logging,
+ com.sun.istack.tools,
  eu.etaxonomy.cdm,
  eu.etaxonomy.cdm.api.application,
  eu.etaxonomy.cdm.api.cache,
@@ -62,6 +68,7 @@ Export-Package: com.google.api,
  eu.etaxonomy.cdm.io.csv.caryophyllales.out,
  eu.etaxonomy.cdm.io.csv.redlist.demo,
  eu.etaxonomy.cdm.io.csv.redlist.out,
+ eu.etaxonomy.cdm.io.distribution.excelupdate,
  eu.etaxonomy.cdm.io.dwca,
  eu.etaxonomy.cdm.io.dwca.in,
  eu.etaxonomy.cdm.io.dwca.jaxb,
@@ -72,8 +79,10 @@ Export-Package: com.google.api,
  eu.etaxonomy.cdm.io.jaxb,
  eu.etaxonomy.cdm.io.markup,
  eu.etaxonomy.cdm.io.markup.handler,
+ eu.etaxonomy.cdm.io.outputmodel,
  eu.etaxonomy.cdm.io.pilotOutputHtml,
  eu.etaxonomy.cdm.io.reference.endnote.in,
+ eu.etaxonomy.cdm.io.reference.ris.in,
  eu.etaxonomy.cdm.io.sdd,
  eu.etaxonomy.cdm.io.sdd.ikeyplus,
  eu.etaxonomy.cdm.io.sdd.in,
@@ -275,13 +284,129 @@ Export-Package: com.google.api,
    org.apache.log4j.spi,
    org.w3c.dom,
    org.xml.sax",
+ org.apache.lucene,
+ org.apache.lucene.analysis,
+ org.apache.lucene.analysis.ar,
+ org.apache.lucene.analysis.bg,
+ org.apache.lucene.analysis.br,
+ org.apache.lucene.analysis.ca,
+ org.apache.lucene.analysis.charfilter,
+ org.apache.lucene.analysis.cjk,
+ org.apache.lucene.analysis.ckb,
+ org.apache.lucene.analysis.cn,
+ org.apache.lucene.analysis.commongrams,
+ org.apache.lucene.analysis.compound,
+ org.apache.lucene.analysis.compound.hyphenation,
+ org.apache.lucene.analysis.core,
+ org.apache.lucene.analysis.custom,
+ org.apache.lucene.analysis.cz,
+ org.apache.lucene.analysis.da,
+ org.apache.lucene.analysis.de,
+ org.apache.lucene.analysis.el,
+ org.apache.lucene.analysis.en,
+ org.apache.lucene.analysis.es,
+ org.apache.lucene.analysis.eu,
+ org.apache.lucene.analysis.fa,
+ org.apache.lucene.analysis.fi,
+ org.apache.lucene.analysis.fr,
+ org.apache.lucene.analysis.ga,
+ org.apache.lucene.analysis.gl,
+ org.apache.lucene.analysis.hi,
+ org.apache.lucene.analysis.hu,
+ org.apache.lucene.analysis.hunspell,
+ org.apache.lucene.analysis.hy,
+ org.apache.lucene.analysis.id,
+ org.apache.lucene.analysis.in,
+ org.apache.lucene.analysis.it,
+ org.apache.lucene.analysis.lt,
+ org.apache.lucene.analysis.lv,
+ org.apache.lucene.analysis.miscellaneous,
+ org.apache.lucene.analysis.ngram,
+ org.apache.lucene.analysis.nl,
+ org.apache.lucene.analysis.no,
+ org.apache.lucene.analysis.path,
+ org.apache.lucene.analysis.pattern,
+ org.apache.lucene.analysis.payloads,
+ org.apache.lucene.analysis.position,
+ org.apache.lucene.analysis.pt,
+ org.apache.lucene.analysis.query,
+ org.apache.lucene.analysis.reverse,
+ org.apache.lucene.analysis.ro,
+ org.apache.lucene.analysis.ru,
+ org.apache.lucene.analysis.shingle,
+ org.apache.lucene.analysis.sinks,
+ org.apache.lucene.analysis.snowball,
+ org.apache.lucene.analysis.sr,
+ org.apache.lucene.analysis.standard,
+ org.apache.lucene.analysis.standard.std40,
+ org.apache.lucene.analysis.sv,
+ org.apache.lucene.analysis.synonym,
+ org.apache.lucene.analysis.th,
+ org.apache.lucene.analysis.tokenattributes,
+ org.apache.lucene.analysis.tr,
+ org.apache.lucene.analysis.util,
+ org.apache.lucene.analysis.wikipedia,
+ org.apache.lucene.bkdtree,
+ org.apache.lucene.codecs,
+ org.apache.lucene.codecs.blocktree,
+ org.apache.lucene.codecs.compressing,
+ org.apache.lucene.codecs.idversion,
+ org.apache.lucene.codecs.lucene50,
+ org.apache.lucene.codecs.lucene53,
+ org.apache.lucene.codecs.lucene54,
+ org.apache.lucene.codecs.perfield,
+ org.apache.lucene.collation,
+ org.apache.lucene.collation.tokenattributes,
+ org.apache.lucene.document,
  org.apache.lucene.index,
+ org.apache.lucene.payloads,
+ org.apache.lucene.queryparser.analyzing,
  org.apache.lucene.queryparser.classic,
+ org.apache.lucene.queryparser.complexPhrase,
+ org.apache.lucene.queryparser.ext,
+ org.apache.lucene.queryparser.flexible.core,
+ org.apache.lucene.queryparser.flexible.core.builders,
+ org.apache.lucene.queryparser.flexible.core.config,
+ org.apache.lucene.queryparser.flexible.core.messages,
+ org.apache.lucene.queryparser.flexible.core.nodes,
+ org.apache.lucene.queryparser.flexible.core.parser,
+ org.apache.lucene.queryparser.flexible.core.processors,
+ org.apache.lucene.queryparser.flexible.core.util,
+ org.apache.lucene.queryparser.flexible.messages,
+ org.apache.lucene.queryparser.flexible.precedence,
+ org.apache.lucene.queryparser.flexible.precedence.processors,
+ org.apache.lucene.queryparser.flexible.standard,
+ org.apache.lucene.queryparser.flexible.standard.builders,
+ org.apache.lucene.queryparser.flexible.standard.config,
+ org.apache.lucene.queryparser.flexible.standard.nodes,
+ org.apache.lucene.queryparser.flexible.standard.parser,
+ org.apache.lucene.queryparser.flexible.standard.processors,
+ org.apache.lucene.queryparser.simple,
+ org.apache.lucene.queryparser.surround.parser,
+ org.apache.lucene.queryparser.surround.query,
+ org.apache.lucene.queryparser.xml,
+ org.apache.lucene.queryparser.xml.builders,
+ org.apache.lucene.rangetree,
+ org.apache.lucene.sandbox.queries,
+ org.apache.lucene.sandbox.queries.regex,
+ org.apache.lucene.search,
+ org.apache.lucene.search.similarities,
+ org.apache.lucene.search.spans,
+ org.apache.lucene.search.spell,
+ org.apache.lucene.search.suggest,
+ org.apache.lucene.search.suggest.analyzing,
+ org.apache.lucene.search.suggest.document,
+ org.apache.lucene.search.suggest.fst,
+ org.apache.lucene.search.suggest.jaspell,
+ org.apache.lucene.search.suggest.tst,
+ org.apache.lucene.store,
  org.apache.lucene.util,
+ org.apache.lucene.util.automaton,
+ org.apache.lucene.util.fst,
+ org.apache.lucene.util.mutable,
+ org.apache.lucene.util.packed,
  org.apache.sanselan;uses:="org.apache.sanselan.common,org.apache.sanselan.common.byteSources",
  org.apache.xerces.dom,
- org.eclipse.osgi.internal.loader,
- org.eclipse.osgi.util,
  org.h2.jdbc,
  org.hamcrest,
  org.hibernate,
@@ -306,6 +431,10 @@ Export-Package: com.google.api,
  org.hibernate.proxy,
  org.hibernate.proxy.pojo.javassist,
  org.hibernate.search,
+ org.hibernate.search.backend.impl.lucene,
+ org.hibernate.search.backend.impl.lucene.analysis,
+ org.hibernate.search.backend.impl.lucene.overrides,
+ org.hibernate.search.backend.impl.lucene.works,
  org.hibernate.search.spatial.impl,
  org.hibernate.type,
  org.jadira.usertype.dateandtime.joda,
@@ -340,13 +469,6 @@ Export-Package: com.google.api,
  org.joda.time.tz;uses:="org.joda.time",
  org.junit;uses:="org.hamcrest",
  org.junit.runner,
- org.odftoolkit.odfdom,
- org.odftoolkit.odfdom.doc,
- org.odftoolkit.odfdom.doc.office,
- org.odftoolkit.odfdom.doc.style,
- org.odftoolkit.odfdom.dom.element,
- org.odftoolkit.odfdom.dom.element.style,
- org.odftoolkit.odfdom.dom.style,
  org.slf4j,
  org.springframework.aop,
  org.springframework.aop.framework,
@@ -509,49 +631,28 @@ Export-Package: com.google.api,
    org.springframework.ui,
    javax.servlet.http"
 Bundle-Vendor: EDIT
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Require-Bundle: org.eclipse.osgi,
  org.eclipse.equinox.common,
  org.apache.commons.httpclient;bundle-version="3.1.0",
- org.eclipse.core.runtime
+ org.eclipse.core.runtime,
+ org.eclipse.e4.core.di.annotations;bundle-version="1.5.0",
+ org.eclipse.e4.ui.services;bundle-version="1.2.100"
 Bundle-ClassPath: .,
  lib/activation-1.1.1.jar,
- lib/antlr-2.7.7.jar,
- lib/aopalliance-1.0.jar,
  lib/apache-log4j-extras-1.2.17.jar,
  lib/aspectjrt-1.8.8.jar,
  lib/aspectjweaver-1.8.8.jar,
- lib/avro-1.6.3.jar,
- lib/batik-anim-1.7.jar,
- lib/batik-awt-util-1.7.jar,
- lib/batik-bridge-1.7.jar,
- lib/batik-css-1.7.jar,
- lib/batik-dom-1.7.jar,
- lib/batik-ext-1.8.jar,
- lib/batik-extension-1.7.jar,
- lib/batik-gvt-1.7.jar,
- lib/batik-js-1.7.jar,
- lib/batik-parser-1.7.jar,
- lib/batik-script-1.7.jar,
- lib/batik-svg-dom-1.7.jar,
- lib/batik-svggen-1.7.jar,
- lib/batik-transcoder-1.7.jar,
- lib/batik-util-1.7.jar,
  lib/batik-xml-1.7.jar,
- lib/c3p0-0.9.5.2.jar,
- lib/cdmlib-commons-4.6.0.jar,
- lib/cdmlib-ext-4.6.0.jar,
- lib/cdmlib-io-4.6.0.jar,
- lib/cdmlib-model-4.6.0.jar,
- lib/cdmlib-persistence-4.6.0.jar,
- lib/cdmlib-print-4.6.0.jar,
- lib/cdmlib-remote-4.6.0.jar,
- lib/cdmlib-services-4.6.0.jar,
- lib/cdmlib-test-4.6.0.jar,
- lib/cglib-3.2.0.jar,
- lib/cglib-nodep-3.2.0.jar,
- lib/classmate-1.3.1.jar,
- lib/codemodel-2.2.11.jar,
+ lib/cdmlib-commons-4.7.0.jar,
+ lib/cdmlib-ext-4.7.0.jar,
+ lib/cdmlib-io-4.7.0.jar,
+ lib/cdmlib-model-4.7.0.jar,
+ lib/cdmlib-persistence-4.7.0.jar,
+ lib/cdmlib-print-4.7.0.jar,
+ lib/cdmlib-remote-4.7.0.jar,
+ lib/cdmlib-services-4.7.0.jar,
+ lib/cdmlib-test-4.7.0.jar,
  lib/com.springsource.org.aopalliance-1.0.0.jar,
  lib/com.springsource.org.apache.commons.logging-1.1.1.jar,
  lib/commons-beanutils-1.9.2.jar,
@@ -564,24 +665,13 @@ Bundle-ClassPath: .,
  lib/commons-lang3-3.3.2.jar,
  lib/commons-logging-1.2.jar,
  lib/commons-pool-1.5.4.jar,
- lib/concurrent-1.3.4.jar,
  lib/dbunit-2.4.9.jar,
  lib/dom4j-1.6.1.jar,
- lib/doxia-core-1.6.jar,
- lib/doxia-logging-api-1.6.jar,
- lib/doxia-module-apt-1.6.jar,
- lib/doxia-module-xhtml-1.6.jar,
- lib/doxia-sink-api-1.6.jar,
  lib/dozer-5.3.0.jar,
  lib/dtd-parser-1.1.jar,
- lib/easymock-2.3.jar,
- lib/easymockclassextension-2.3.jar,
  lib/ehcache-core-2.6.11.jar,
  lib/ezmorph-1.0.6.jar,
- lib/FastInfoset-1.2.13.jar,
- lib/fop-1.1.jar,
  lib/google-api-translate-java-0.92.jar,
- lib/guava-19.0.jar,
  lib/h2-1.4.190.jar,
  lib/h2mig_pagestore_addon.jar,
  lib/hamcrest-core-1.3.jar,
@@ -606,13 +696,70 @@ Bundle-ClassPath: .,
  lib/httpmime-4.5.1.jar,
  lib/icu4j-2.6.1.jar,
  lib/identificationKeyAPI-1.0.jar,
- lib/istack-commons-runtime-2.21.jar,
- lib/istack-commons-tools-2.21.jar,
  lib/itextpdf-5.5.8.jar,
  lib/jackson-annotations-2.6.5.jar,
  lib/jackson-core-2.6.5.jar,
- lib/jackson-core-asl-1.8.8.jar,
+ lib/jboss-logging-3.3.0.Final.jar,
+ lib/jdom-1.1.3.jar,
+ lib/jdom2-2.0.6.jar,
+ lib/joda-time-2.9.1.jar,
+ lib/log4j-1.2.17.jar,
+ lib/lsid-client-1.1.2.jar,
+ lib/sanselan-0.97-incubator.jar,
+ lib/spring-aop-4.2.4.RELEASE.jar,
+ lib/spring-aspects-4.2.4.RELEASE.jar,
+ lib/spring-beans-4.2.4.RELEASE.jar,
+ lib/spring-context-4.2.4.RELEASE.jar,
+ lib/spring-context-support-4.2.4.RELEASE.jar,
+ lib/spring-core-4.2.4.RELEASE.jar,
+ lib/spring-expression-4.2.4.RELEASE.jar,
+ lib/spring-jdbc-4.2.4.RELEASE.jar,
+ lib/spring-modules-cache-0.7.jar,
+ lib/spring-orm-4.2.4.RELEASE.jar,
+ lib/spring-oxm-4.2.4.RELEASE.jar,
+ lib/spring-plugin-core-1.2.0.RELEASE.jar,
+ lib/spring-plugin-metadata-1.2.0.RELEASE.jar,
+ lib/spring-security-config-4.0.3.RELEASE.jar,
+ lib/spring-security-core-4.0.3.RELEASE.jar,
+ lib/spring-security-web-4.0.3.RELEASE.jar,
+ lib/spring-test-4.2.4.RELEASE.jar,
+ lib/spring-tx-4.2.4.RELEASE.jar,
+ lib/spring-web-4.2.4.RELEASE.jar,
+ lib/spring-webmvc-4.2.4.RELEASE.jar,
+ lib/springfox-core-2.3.1.jar,
+ lib/springfox-schema-2.3.1.jar,
+ lib/springfox-spi-2.3.1.jar,
+ lib/springfox-spring-web-2.3.1.jar,
+ lib/springfox-swagger-common-2.3.1.jar,
+ lib/springfox-swagger2-2.3.1.jar,
+ lib/standard-1.1.2.jar,
+ lib/tools.jar,
+ lib/txw2-2.2.11.jar,
+ lib/usertype.jodatime-2.0.1.jar,
+ lib/usertype.spi-2.0.1.jar,
+ lib/validation-api-1.1.0.Final.jar,
+ lib/wsdl4j-1.6.3.jar,
+ lib/xalan-2.7.0.jar,
+ lib/xercesImpl-2.11.0.jar,
+ lib/xml-apis-1.0.b2.jar,
+ lib/xml-apis-ext-1.3.04.jar,
+ lib/xml-resolver-1.2.jar,
+ lib/xmlbeans-2.6.0.jar,
+ lib/xmlgraphics-commons-1.5.jar,
+ lib/xmlpull-1.1.3.1.jar,
+ lib/xmlunit-1.6.jar,
+ lib/xom-1.2.5.jar,
+ lib/xpp3_min-1.1.4c.jar,
+ lib/xpp3-1.1.4c.jar,
+ lib/xsom-20140925.jar,
+ lib/xstream-1.4.8.jar,
+ lib/yjp-controller-api-redist-9.0.8.jar,
+ lib/spring-security-oauth2-2.0.11.RELEASE.jar,
+ lib/opencsv-2.3.jar,
+ lib/jdbc4-2.0.jar,
+ lib/junit-4.12.jar,
  lib/jackson-databind-2.6.5.jar,
+ lib/jackson-core-asl-1.8.8.jar,
  lib/jackson-mapper-asl-1.8.8.jar,
  lib/jakarta-regexp-1.4.jar,
  lib/jandex-2.0.0.Final.jar,
@@ -628,42 +775,53 @@ Bundle-ClassPath: .,
  lib/jaxb1-impl-2.2-EA.jar,
  lib/jaxen-1.1.4.jar,
  lib/jaxen-1.1.6.jar,
- lib/jboss-logging-3.3.0.Final.jar,
  lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar,
  lib/jcl-over-slf4j-1.7.6.jar,
- lib/jdbc4-2.0.jar,
- lib/jdom-1.1.3.jar,
- lib/jdom2-2.0.6.jar,
  lib/jena-arq-2.13.0.jar,
  lib/jena-core-2.13.0.jar,
  lib/jena-iri-1.1.2.jar,
  lib/jena-tdb-1.1.2.jar,
- lib/joda-time-2.9.1.jar,
  lib/json-20090211.jar,
  lib/json-lib-2.4-jdk15.jar,
  lib/jsonld-java-0.5.1.jar,
  lib/jsr250-api-1.0.jar,
  lib/jta-1.1.jar,
  lib/jtds-1.3.1.jar,
- lib/junit-4.12.jar,
  lib/junit-benchmarks-0.7.2.jar,
+ lib/batik-dom-1.7.jar,
+ lib/batik-anim-1.7.jar,
+ lib/batik-awt-util-1.7.jar,
+ lib/batik-bridge-1.7.jar,
+ lib/batik-css-1.7.jar,
+ lib/batik-ext-1.8.jar,
+ lib/batik-extension-1.7.jar,
+ lib/batik-gvt-1.7.jar,
+ lib/batik-js-1.7.jar,
+ lib/batik-parser-1.7.jar,
+ lib/batik-script-1.7.jar,
+ lib/batik-svg-dom-1.7.jar,
+ lib/batik-svggen-1.7.jar,
+ lib/batik-transcoder-1.7.jar,
+ lib/batik-util-1.7.jar,
+ lib/c3p0-0.9.5.2.jar,
+ lib/slf4j-api-1.7.13.jar,
+ lib/slf4j-log4j12-1.7.13.jar,
+ lib/slf4j-nop-1.7.13.jar,
+ lib/antlr-2.7.7.jar,
+ lib/aopalliance-1.0.jar,
+ lib/avro-1.6.3.jar,
+ lib/cglib-3.2.0.jar,
+ lib/cglib-nodep-3.2.0.jar,
+ lib/classmate-1.3.1.jar,
+ lib/codemodel-2.2.11.jar,
+ lib/concurrent-1.3.4.jar,
+ lib/easymock-2.3.jar,
+ lib/easymockclassextension-2.3.jar,
+ lib/FastInfoset-1.2.13.jar,
+ lib/fop-1.1.jar,
+ lib/guava-19.0.jar,
  lib/libthrift-0.9.2.jar,
- lib/log4j-1.2.17.jar,
- lib/lsid-client-1.1.2.jar,
  lib/lsid-server-1.1.2.jar,
- lib/lucene-analyzers-common-5.4.1.jar,
- lib/lucene-backward-codecs-5.4.1.jar,
- lib/lucene-core-5.4.1.jar,
- lib/lucene-facet-5.4.1.jar,
- lib/lucene-grouping-5.4.1.jar,
- lib/lucene-highlighter-5.4.1.jar,
- lib/lucene-join-5.4.1.jar,
- lib/lucene-memory-5.4.1.jar,
- lib/lucene-misc-5.4.1.jar,
- lib/lucene-queries-5.4.1.jar,
- lib/lucene-queryparser-5.4.1.jar,
- lib/lucene-sandbox-5.4.1.jar,
- lib/lucene-suggest-5.4.1.jar,
  lib/mapstruct-1.0.0.Final.jar,
  lib/mchange-commons-java-0.2.11.jar,
  lib/mysql-connector-java-5.1.38.jar,
@@ -671,64 +829,19 @@ Bundle-ClassPath: .,
  lib/odfdom-0.8.jar,
  lib/odfdom-java-0.8.7.jar,
  lib/ognl-2.6.9.jar,
- lib/opencsv-2.3.jar,
- lib/org.osgi.core-1.0.0.jar,
- lib/osgi-3.6.0.jar,
  lib/paranamer-2.3.jar,
- lib/plexus-classworlds-1.2-alpha-9.jar,
- lib/plexus-component-annotations-1.5.5.jar,
- lib/plexus-container-default-1.0-alpha-30.jar,
- lib/plexus-utils-3.0.15.jar,
  lib/poi-3.13.jar,
  lib/poi-ooxml-3.13.jar,
  lib/poi-ooxml-schemas-3.13.jar,
  lib/postgresql-9.4-1206-jdbc4.jar,
  lib/relaxngDatatype-20020414.jar,
  lib/rngom-2.2.11.jar,
- lib/sanselan-0.97-incubator.jar,
  lib/Saxon-HE-9.7.0-2.jar,
  lib/servlet-api-2.5.jar,
- lib/slf4j-api-1.7.13.jar,
- lib/slf4j-log4j12-1.7.13.jar,
- lib/slf4j-nop-1.7.13.jar,
  lib/snappy-java-1.0.4.1.jar,
  lib/solr-analysis-extras-3.6.2.jar,
  lib/solr-core-3.6.2.jar,
  lib/solr-solrj-3.6.2.jar,
- lib/spring-aop-4.2.4.RELEASE.jar,
- lib/spring-aspects-4.2.4.RELEASE.jar,
- lib/spring-beans-4.2.4.RELEASE.jar,
- lib/spring-context-4.2.4.RELEASE.jar,
- lib/spring-context-support-4.2.4.RELEASE.jar,
- lib/spring-core-4.2.4.RELEASE.jar,
- lib/spring-expression-4.2.4.RELEASE.jar,
- lib/spring-jdbc-4.2.4.RELEASE.jar,
- lib/spring-modules-cache-0.7.jar,
- lib/spring-orm-4.2.4.RELEASE.jar,
- lib/spring-oxm-4.2.4.RELEASE.jar,
- lib/spring-plugin-core-1.2.0.RELEASE.jar,
- lib/spring-plugin-metadata-1.2.0.RELEASE.jar,
- lib/spring-security-config-4.0.3.RELEASE.jar,
- lib/spring-security-core-4.0.3.RELEASE.jar,
- lib/spring-security-web-4.0.3.RELEASE.jar,
- lib/spring-test-4.2.4.RELEASE.jar,
- lib/spring-tx-4.2.4.RELEASE.jar,
- lib/spring-web-4.2.4.RELEASE.jar,
- lib/spring-webmvc-4.2.4.RELEASE.jar,
- lib/springfox-core-2.3.1.jar,
- lib/springfox-schema-2.3.1.jar,
- lib/springfox-spi-2.3.1.jar,
- lib/springfox-spring-web-2.3.1.jar,
- lib/springfox-swagger-common-2.3.1.jar,
- lib/springfox-swagger2-2.3.1.jar,
- lib/standard-1.1.2.jar,
- lib/stax-1.2.0.jar,
- lib/stax-api-1.0.1.jar,
- lib/stax-ex-1.7.7.jar,
- lib/swagger-annotations-1.5.6.jar,
- lib/swagger-models-1.5.5.jar,
- lib/tools.jar,
- lib/txw2-2.2.11.jar,
  lib/unitils-core-3.4.2.jar,
  lib/unitils-database-3.4.2.jar,
  lib/unitils-dbmaintainer-3.4.2.jar,
@@ -738,24 +851,12 @@ Bundle-ClassPath: .,
  lib/unitils-mock-3.4.2.jar,
  lib/unitils-orm-3.4.2.jar,
  lib/unitils-spring-3.4.2.jar,
- lib/usertype.jodatime-2.0.1.jar,
- lib/usertype.spi-2.0.1.jar,
- lib/validation-api-1.1.0.Final.jar,
- lib/wsdl4j-1.6.3.jar,
- lib/xalan-2.7.0.jar,
- lib/xercesImpl-2.11.0.jar,
- lib/xml-apis-1.0.b2.jar,
- lib/xml-apis-ext-1.3.04.jar,
- lib/xml-resolver-1.2.jar,
- lib/xmlbeans-2.6.0.jar,
- lib/xmlgraphics-commons-1.5.jar,
- lib/xmlpull-1.1.3.1.jar,
- lib/xmlunit-1.6.jar,
- lib/xom-1.2.5.jar,
- lib/xpp3_min-1.1.4c.jar,
- lib/xpp3-1.1.4c.jar,
- lib/xsom-20140925.jar,
- lib/xstream-1.4.8.jar,
- lib/yjp-controller-api-redist-9.0.8.jar,
- lib/spring-security-oauth2-2.0.11.RELEASE.jar
+ lib/lucene-core-5.4.1.jar,
+ lib/istack-commons-runtime-2.21.jar,
+ lib/istack-commons-tools-2.21.jar,
+ lib/lucene-queryparser-5.4.1.jar,
+ lib/lucene-analyzers-3.6.2.jar,
+ lib/lucene-analyzers-common-5.4.1.jar,
+ lib/lucene-sandbox-5.4.1.jar,
+ lib/lucene-suggest-5.4.1.jar
 Import-Package: eu.etaxonomy.cdm.api.application
index 4bdb6e202a1d078f0a9f5b8828a4ab2311db03fe..a14ab666efda528d4452b6d55d66bc8bb08a42c0 100644 (file)
@@ -2,42 +2,19 @@ bin.includes = META-INF/,\
                .,\
                resources/cdm.map.ser,\
                lib/activation-1.1.1.jar,\
-               lib/antlr-2.7.7.jar,\
-               lib/aopalliance-1.0.jar,\
                lib/apache-log4j-extras-1.2.17.jar,\
                lib/aspectjrt-1.8.8.jar,\
                lib/aspectjweaver-1.8.8.jar,\
-               lib/avro-1.6.3.jar,\
-               lib/batik-anim-1.7.jar,\
-               lib/batik-awt-util-1.7.jar,\
-               lib/batik-bridge-1.7.jar,\
-               lib/batik-css-1.7.jar,\
-               lib/batik-dom-1.7.jar,\
-               lib/batik-ext-1.8.jar,\
-               lib/batik-extension-1.7.jar,\
-               lib/batik-gvt-1.7.jar,\
-               lib/batik-js-1.7.jar,\
-               lib/batik-parser-1.7.jar,\
-               lib/batik-script-1.7.jar,\
-               lib/batik-svg-dom-1.7.jar,\
-               lib/batik-svggen-1.7.jar,\
-               lib/batik-transcoder-1.7.jar,\
-               lib/batik-util-1.7.jar,\
                lib/batik-xml-1.7.jar,\
-               lib/c3p0-0.9.5.2.jar,\
-               lib/cdmlib-commons-4.6.0.jar,\
-               lib/cdmlib-ext-4.6.0.jar,\
-               lib/cdmlib-io-4.6.0.jar,\
-               lib/cdmlib-model-4.6.0.jar,\
-               lib/cdmlib-persistence-4.6.0.jar,\
-               lib/cdmlib-print-4.6.0.jar,\
-               lib/cdmlib-remote-4.6.0.jar,\
-               lib/cdmlib-services-4.6.0.jar,\
-               lib/cdmlib-test-4.6.0.jar,\
-               lib/cglib-3.2.0.jar,\
-               lib/cglib-nodep-3.2.0.jar,\
-               lib/classmate-1.3.1.jar,\
-               lib/codemodel-2.2.11.jar,\
+               lib/cdmlib-commons-4.7.0.jar,\
+               lib/cdmlib-ext-4.7.0.jar,\
+               lib/cdmlib-io-4.7.0.jar,\
+               lib/cdmlib-model-4.7.0.jar,\
+               lib/cdmlib-persistence-4.7.0.jar,\
+               lib/cdmlib-print-4.7.0.jar,\
+               lib/cdmlib-remote-4.7.0.jar,\
+               lib/cdmlib-services-4.7.0.jar,\
+               lib/cdmlib-test-4.7.0.jar,\
                lib/com.springsource.org.aopalliance-1.0.0.jar,\
                lib/com.springsource.org.apache.commons.logging-1.1.1.jar,\
                lib/commons-beanutils-1.9.2.jar,\
@@ -50,24 +27,13 @@ bin.includes = META-INF/,\
                lib/commons-lang3-3.3.2.jar,\
                lib/commons-logging-1.2.jar,\
                lib/commons-pool-1.5.4.jar,\
-               lib/concurrent-1.3.4.jar,\
                lib/dbunit-2.4.9.jar,\
                lib/dom4j-1.6.1.jar,\
-               lib/doxia-core-1.6.jar,\
-               lib/doxia-logging-api-1.6.jar,\
-               lib/doxia-module-apt-1.6.jar,\
-               lib/doxia-module-xhtml-1.6.jar,\
-               lib/doxia-sink-api-1.6.jar,\
                lib/dozer-5.3.0.jar,\
                lib/dtd-parser-1.1.jar,\
-               lib/easymock-2.3.jar,\
-               lib/easymockclassextension-2.3.jar,\
                lib/ehcache-core-2.6.11.jar,\
                lib/ezmorph-1.0.6.jar,\
-               lib/FastInfoset-1.2.13.jar,\
-               lib/fop-1.1.jar,\
                lib/google-api-translate-java-0.92.jar,\
-               lib/guava-19.0.jar,\
                lib/h2-1.4.190.jar,\
                lib/h2mig_pagestore_addon.jar,\
                lib/hamcrest-core-1.3.jar,\
@@ -92,13 +58,70 @@ bin.includes = META-INF/,\
                lib/httpmime-4.5.1.jar,\
                lib/icu4j-2.6.1.jar,\
                lib/identificationKeyAPI-1.0.jar,\
-               lib/istack-commons-runtime-2.21.jar,\
-               lib/istack-commons-tools-2.21.jar,\
                lib/itextpdf-5.5.8.jar,\
                lib/jackson-annotations-2.6.5.jar,\
                lib/jackson-core-2.6.5.jar,\
-               lib/jackson-core-asl-1.8.8.jar,\
+               lib/jboss-logging-3.3.0.Final.jar,\
+               lib/jdom-1.1.3.jar,\
+               lib/jdom2-2.0.6.jar,\
+               lib/joda-time-2.9.1.jar,\
+               lib/log4j-1.2.17.jar,\
+               lib/lsid-client-1.1.2.jar,\
+               lib/sanselan-0.97-incubator.jar,\
+               lib/spring-aop-4.2.4.RELEASE.jar,\
+               lib/spring-aspects-4.2.4.RELEASE.jar,\
+               lib/spring-beans-4.2.4.RELEASE.jar,\
+               lib/spring-context-4.2.4.RELEASE.jar,\
+               lib/spring-context-support-4.2.4.RELEASE.jar,\
+               lib/spring-core-4.2.4.RELEASE.jar,\
+               lib/spring-expression-4.2.4.RELEASE.jar,\
+               lib/spring-jdbc-4.2.4.RELEASE.jar,\
+               lib/spring-modules-cache-0.7.jar,\
+               lib/spring-orm-4.2.4.RELEASE.jar,\
+               lib/spring-oxm-4.2.4.RELEASE.jar,\
+               lib/spring-plugin-core-1.2.0.RELEASE.jar,\
+               lib/spring-plugin-metadata-1.2.0.RELEASE.jar,\
+               lib/spring-security-config-4.0.3.RELEASE.jar,\
+               lib/spring-security-core-4.0.3.RELEASE.jar,\
+               lib/spring-security-web-4.0.3.RELEASE.jar,\
+               lib/spring-test-4.2.4.RELEASE.jar,\
+               lib/spring-tx-4.2.4.RELEASE.jar,\
+               lib/spring-web-4.2.4.RELEASE.jar,\
+               lib/spring-webmvc-4.2.4.RELEASE.jar,\
+               lib/springfox-core-2.3.1.jar,\
+               lib/springfox-schema-2.3.1.jar,\
+               lib/springfox-spi-2.3.1.jar,\
+               lib/springfox-spring-web-2.3.1.jar,\
+               lib/springfox-swagger-common-2.3.1.jar,\
+               lib/springfox-swagger2-2.3.1.jar,\
+               lib/standard-1.1.2.jar,\
+               lib/tools.jar,\
+               lib/txw2-2.2.11.jar,\
+               lib/usertype.jodatime-2.0.1.jar,\
+               lib/usertype.spi-2.0.1.jar,\
+               lib/validation-api-1.1.0.Final.jar,\
+               lib/wsdl4j-1.6.3.jar,\
+               lib/xalan-2.7.0.jar,\
+               lib/xercesImpl-2.11.0.jar,\
+               lib/xml-apis-1.0.b2.jar,\
+               lib/xml-apis-ext-1.3.04.jar,\
+               lib/xml-resolver-1.2.jar,\
+               lib/xmlbeans-2.6.0.jar,\
+               lib/xmlgraphics-commons-1.5.jar,\
+               lib/xmlpull-1.1.3.1.jar,\
+               lib/xmlunit-1.6.jar,\
+               lib/xom-1.2.5.jar,\
+               lib/xpp3_min-1.1.4c.jar,\
+               lib/xpp3-1.1.4c.jar,\
+               lib/xsom-20140925.jar,\
+               lib/xstream-1.4.8.jar,\
+               lib/yjp-controller-api-redist-9.0.8.jar,\
+               lib/spring-security-oauth2-2.0.11.RELEASE.jar,\
+               lib/opencsv-2.3.jar,\
+               lib/jdbc4-2.0.jar,\
+               lib/junit-4.12.jar,\
                lib/jackson-databind-2.6.5.jar,\
+               lib/jackson-core-asl-1.8.8.jar,\
                lib/jackson-mapper-asl-1.8.8.jar,\
                lib/jakarta-regexp-1.4.jar,\
                lib/jandex-2.0.0.Final.jar,\
@@ -114,42 +137,53 @@ bin.includes = META-INF/,\
                lib/jaxb1-impl-2.2-EA.jar,\
                lib/jaxen-1.1.4.jar,\
                lib/jaxen-1.1.6.jar,\
-               lib/jboss-logging-3.3.0.Final.jar,\
                lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar,\
                lib/jcl-over-slf4j-1.7.6.jar,\
-               lib/jdbc4-2.0.jar,\
-               lib/jdom-1.1.3.jar,\
-               lib/jdom2-2.0.6.jar,\
                lib/jena-arq-2.13.0.jar,\
                lib/jena-core-2.13.0.jar,\
                lib/jena-iri-1.1.2.jar,\
                lib/jena-tdb-1.1.2.jar,\
-               lib/joda-time-2.9.1.jar,\
                lib/json-20090211.jar,\
                lib/json-lib-2.4-jdk15.jar,\
                lib/jsonld-java-0.5.1.jar,\
                lib/jsr250-api-1.0.jar,\
                lib/jta-1.1.jar,\
                lib/jtds-1.3.1.jar,\
-               lib/junit-4.12.jar,\
                lib/junit-benchmarks-0.7.2.jar,\
+               lib/batik-dom-1.7.jar,\
+               lib/batik-anim-1.7.jar,\
+               lib/batik-awt-util-1.7.jar,\
+               lib/batik-bridge-1.7.jar,\
+               lib/batik-css-1.7.jar,\
+               lib/batik-ext-1.8.jar,\
+               lib/batik-extension-1.7.jar,\
+               lib/batik-gvt-1.7.jar,\
+               lib/batik-js-1.7.jar,\
+               lib/batik-parser-1.7.jar,\
+               lib/batik-script-1.7.jar,\
+               lib/batik-svg-dom-1.7.jar,\
+               lib/batik-svggen-1.7.jar,\
+               lib/batik-transcoder-1.7.jar,\
+               lib/batik-util-1.7.jar,\
+               lib/c3p0-0.9.5.2.jar,\
+               lib/slf4j-api-1.7.13.jar,\
+               lib/slf4j-log4j12-1.7.13.jar,\
+               lib/slf4j-nop-1.7.13.jar,\
+               lib/antlr-2.7.7.jar,\
+               lib/aopalliance-1.0.jar,\
+               lib/avro-1.6.3.jar,\
+               lib/cglib-3.2.0.jar,\
+               lib/cglib-nodep-3.2.0.jar,\
+               lib/classmate-1.3.1.jar,\
+               lib/codemodel-2.2.11.jar,\
+               lib/concurrent-1.3.4.jar,\
+               lib/easymock-2.3.jar,\
+               lib/easymockclassextension-2.3.jar,\
+               lib/FastInfoset-1.2.13.jar,\
+               lib/fop-1.1.jar,\
+               lib/guava-19.0.jar,\
                lib/libthrift-0.9.2.jar,\
-               lib/log4j-1.2.17.jar,\
-               lib/lsid-client-1.1.2.jar,\
                lib/lsid-server-1.1.2.jar,\
-               lib/lucene-analyzers-common-5.4.1.jar,\
-               lib/lucene-backward-codecs-5.4.1.jar,\
-               lib/lucene-core-5.4.1.jar,\
-               lib/lucene-facet-5.4.1.jar,\
-               lib/lucene-grouping-5.4.1.jar,\
-               lib/lucene-highlighter-5.4.1.jar,\
-               lib/lucene-join-5.4.1.jar,\
-               lib/lucene-memory-5.4.1.jar,\
-               lib/lucene-misc-5.4.1.jar,\
-               lib/lucene-queries-5.4.1.jar,\
-               lib/lucene-queryparser-5.4.1.jar,\
-               lib/lucene-sandbox-5.4.1.jar,\
-               lib/lucene-suggest-5.4.1.jar,\
                lib/mapstruct-1.0.0.Final.jar,\
                lib/mchange-commons-java-0.2.11.jar,\
                lib/mysql-connector-java-5.1.38.jar,\
@@ -157,64 +191,19 @@ bin.includes = META-INF/,\
                lib/odfdom-0.8.jar,\
                lib/odfdom-java-0.8.7.jar,\
                lib/ognl-2.6.9.jar,\
-               lib/opencsv-2.3.jar,\
-               lib/org.osgi.core-1.0.0.jar,\
-               lib/osgi-3.6.0.jar,\
                lib/paranamer-2.3.jar,\
-               lib/plexus-classworlds-1.2-alpha-9.jar,\
-               lib/plexus-component-annotations-1.5.5.jar,\
-               lib/plexus-container-default-1.0-alpha-30.jar,\
-               lib/plexus-utils-3.0.15.jar,\
                lib/poi-3.13.jar,\
                lib/poi-ooxml-3.13.jar,\
                lib/poi-ooxml-schemas-3.13.jar,\
                lib/postgresql-9.4-1206-jdbc4.jar,\
                lib/relaxngDatatype-20020414.jar,\
                lib/rngom-2.2.11.jar,\
-               lib/sanselan-0.97-incubator.jar,\
                lib/Saxon-HE-9.7.0-2.jar,\
                lib/servlet-api-2.5.jar,\
-               lib/slf4j-api-1.7.13.jar,\
-               lib/slf4j-log4j12-1.7.13.jar,\
-               lib/slf4j-nop-1.7.13.jar,\
                lib/snappy-java-1.0.4.1.jar,\
                lib/solr-analysis-extras-3.6.2.jar,\
                lib/solr-core-3.6.2.jar,\
                lib/solr-solrj-3.6.2.jar,\
-               lib/spring-aop-4.2.4.RELEASE.jar,\
-               lib/spring-aspects-4.2.4.RELEASE.jar,\
-               lib/spring-beans-4.2.4.RELEASE.jar,\
-               lib/spring-context-4.2.4.RELEASE.jar,\
-               lib/spring-context-support-4.2.4.RELEASE.jar,\
-               lib/spring-core-4.2.4.RELEASE.jar,\
-               lib/spring-expression-4.2.4.RELEASE.jar,\
-               lib/spring-jdbc-4.2.4.RELEASE.jar,\
-               lib/spring-modules-cache-0.7.jar,\
-               lib/spring-orm-4.2.4.RELEASE.jar,\
-               lib/spring-oxm-4.2.4.RELEASE.jar,\
-               lib/spring-plugin-core-1.2.0.RELEASE.jar,\
-               lib/spring-plugin-metadata-1.2.0.RELEASE.jar,\
-               lib/spring-security-config-4.0.3.RELEASE.jar,\
-               lib/spring-security-core-4.0.3.RELEASE.jar,\
-               lib/spring-security-web-4.0.3.RELEASE.jar,\
-               lib/spring-test-4.2.4.RELEASE.jar,\
-               lib/spring-tx-4.2.4.RELEASE.jar,\
-               lib/spring-web-4.2.4.RELEASE.jar,\
-               lib/spring-webmvc-4.2.4.RELEASE.jar,\
-               lib/springfox-core-2.3.1.jar,\
-               lib/springfox-schema-2.3.1.jar,\
-               lib/springfox-spi-2.3.1.jar,\
-               lib/springfox-spring-web-2.3.1.jar,\
-               lib/springfox-swagger-common-2.3.1.jar,\
-               lib/springfox-swagger2-2.3.1.jar,\
-               lib/standard-1.1.2.jar,\
-               lib/stax-1.2.0.jar,\
-               lib/stax-api-1.0.1.jar,\
-               lib/stax-ex-1.7.7.jar,\
-               lib/swagger-annotations-1.5.6.jar,\
-               lib/swagger-models-1.5.5.jar,\
-               lib/tools.jar,\
-               lib/txw2-2.2.11.jar,\
                lib/unitils-core-3.4.2.jar,\
                lib/unitils-database-3.4.2.jar,\
                lib/unitils-dbmaintainer-3.4.2.jar,\
@@ -224,26 +213,14 @@ bin.includes = META-INF/,\
                lib/unitils-mock-3.4.2.jar,\
                lib/unitils-orm-3.4.2.jar,\
                lib/unitils-spring-3.4.2.jar,\
-               lib/usertype.jodatime-2.0.1.jar,\
-               lib/usertype.spi-2.0.1.jar,\
-               lib/validation-api-1.1.0.Final.jar,\
-               lib/wsdl4j-1.6.3.jar,\
-               lib/xalan-2.7.0.jar,\
-               lib/xercesImpl-2.11.0.jar,\
-               lib/xml-apis-1.0.b2.jar,\
-               lib/xml-apis-ext-1.3.04.jar,\
-               lib/xml-resolver-1.2.jar,\
-               lib/xmlbeans-2.6.0.jar,\
-               lib/xmlgraphics-commons-1.5.jar,\
-               lib/xmlpull-1.1.3.1.jar,\
-               lib/xmlunit-1.6.jar,\
-               lib/xom-1.2.5.jar,\
-               lib/xpp3_min-1.1.4c.jar,\
-               lib/xpp3-1.1.4c.jar,\
-               lib/xsom-20140925.jar,\
-               lib/xstream-1.4.8.jar,\
-               lib/yjp-controller-api-redist-9.0.8.jar,\
-               lib/spring-security-oauth2-2.0.11.RELEASE.jar
+               lib/lucene-core-5.4.1.jar,\
+               lib/istack-commons-runtime-2.21.jar,\
+               lib/istack-commons-tools-2.21.jar,\
+               lib/lucene-queryparser-5.4.1.jar,\
+               lib/lucene-analyzers-3.6.2.jar,\
+               lib/lucene-analyzers-common-5.4.1.jar,\
+               lib/lucene-sandbox-5.4.1.jar,\
+               lib/lucene-suggest-5.4.1.jar
 
 jars.compile.order = .
 output.. = bin/
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-core-1.6.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-core-1.6.jar
deleted file mode 100644 (file)
index 4f595c6..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-core-1.6.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-logging-api-1.6.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-logging-api-1.6.jar
deleted file mode 100644 (file)
index aa3d909..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-logging-api-1.6.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-module-apt-1.6.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-module-apt-1.6.jar
deleted file mode 100644 (file)
index 9080348..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-module-apt-1.6.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-module-xhtml-1.6.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-module-xhtml-1.6.jar
deleted file mode 100644 (file)
index ca6607e..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-module-xhtml-1.6.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-sink-api-1.6.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-sink-api-1.6.jar
deleted file mode 100644 (file)
index 7ddd397..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/doxia-sink-api-1.6.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-analyzers-3.6.2.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-analyzers-3.6.2.jar
new file mode 100644 (file)
index 0000000..752c714
Binary files /dev/null and b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-analyzers-3.6.2.jar differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-backward-codecs-5.4.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-backward-codecs-5.4.1.jar
deleted file mode 100644 (file)
index 67b83ee..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-backward-codecs-5.4.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-facet-5.4.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-facet-5.4.1.jar
deleted file mode 100644 (file)
index 941d1d1..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-facet-5.4.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-grouping-5.4.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-grouping-5.4.1.jar
deleted file mode 100644 (file)
index 06ed59d..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-grouping-5.4.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-highlighter-5.4.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-highlighter-5.4.1.jar
deleted file mode 100644 (file)
index 381ea47..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-highlighter-5.4.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-join-5.4.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-join-5.4.1.jar
deleted file mode 100644 (file)
index 16a3e87..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-join-5.4.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-memory-5.4.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-memory-5.4.1.jar
deleted file mode 100644 (file)
index 6b65fe2..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-memory-5.4.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-misc-5.4.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-misc-5.4.1.jar
deleted file mode 100644 (file)
index 8d36fe7..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-misc-5.4.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-queries-5.4.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-queries-5.4.1.jar
deleted file mode 100644 (file)
index 168771d..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/lucene-queries-5.4.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/org.osgi.core-1.0.0.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/org.osgi.core-1.0.0.jar
deleted file mode 100644 (file)
index dcddc09..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/org.osgi.core-1.0.0.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/osgi-3.6.0.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/osgi-3.6.0.jar
deleted file mode 100644 (file)
index b2bd56e..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/osgi-3.6.0.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-classworlds-1.2-alpha-9.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-classworlds-1.2-alpha-9.jar
deleted file mode 100644 (file)
index 1aa4fd1..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-classworlds-1.2-alpha-9.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-component-annotations-1.5.5.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-component-annotations-1.5.5.jar
deleted file mode 100644 (file)
index e4de16f..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-component-annotations-1.5.5.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-container-default-1.0-alpha-30.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-container-default-1.0-alpha-30.jar
deleted file mode 100644 (file)
index 97785bb..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-container-default-1.0-alpha-30.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-utils-3.0.15.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-utils-3.0.15.jar
deleted file mode 100644 (file)
index feab196..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/plexus-utils-3.0.15.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/stax-1.2.0.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/stax-1.2.0.jar
deleted file mode 100644 (file)
index 0df112a..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/stax-1.2.0.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/stax-api-1.0.1.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/stax-api-1.0.1.jar
deleted file mode 100644 (file)
index d9a1665..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/stax-api-1.0.1.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/stax-ex-1.7.7.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/stax-ex-1.7.7.jar
deleted file mode 100644 (file)
index 31a6aad..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/stax-ex-1.7.7.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/swagger-annotations-1.5.6.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/swagger-annotations-1.5.6.jar
deleted file mode 100644 (file)
index 5bea844..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/swagger-annotations-1.5.6.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.cdmlib/lib/swagger-models-1.5.5.jar b/eu.etaxonomy.taxeditor.cdmlib/lib/swagger-models-1.5.5.jar
deleted file mode 100644 (file)
index a14a5ff..0000000
Binary files a/eu.etaxonomy.taxeditor.cdmlib/lib/swagger-models-1.5.5.jar and /dev/null differ
index 8da8b8ecb1e493c7aba2a5e188c7fadeab085100..f11ee682b5b07bf796bf583f829eb528b2f20607 100644 (file)
@@ -4,7 +4,7 @@
   <parent>\r
     <groupId>eu.etaxonomy</groupId>\r
     <artifactId>taxeditor-parent</artifactId>\r
-    <version>4.6.0</version>\r
+    <version>4.7.0</version>\r
   </parent>\r
   <modelVersion>4.0.0</modelVersion>\r
   <artifactId>eu.etaxonomy.taxeditor.cdmlib</artifactId>\r
       <artifactId>commons-pool</artifactId>\r
       <version>1.5.4</version>\r
     </dependency>\r
-\r
  \r
     <!-- For Unit Tests End -->\r
 \r
       <version>1.1.0.Final</version>\r
     </dependency>\r
     <!-- For Hibernate Mapping End -->\r
-\r
-       <dependency>\r
-               <groupId>com.itextpdf</groupId>\r
-               <artifactId>itextpdf</artifactId>\r
-               <version>5.5.8</version>\r
-               <scope>compile</scope>\r
-       </dependency>\r
-\r
+    \r
   </dependencies>\r
 </project>\r
 \r
index 88f0aab8867089bbf7b82e43fcbd8005810078aa..5365fe2805e42671048e28c75e8a5cfce2b88c14 100644 (file)
@@ -146,10 +146,6 @@ public class CdmServiceCacher extends CdmCacher implements ICdmEntitySessionMana
         return cachedCdmEntity;
     }
 
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.cdm.api.cache.CdmCacher#load(eu.etaxonomy.cdm.model.common.CdmBase)
-     */
     @Override
     public CdmBase load(CdmBase cdmEntity) {
         CdmBase cachedCdmEntity = getFromCache(cdmEntity.getUuid());
@@ -160,9 +156,6 @@ public class CdmServiceCacher extends CdmCacher implements ICdmEntitySessionMana
         return cachedCdmEntity;
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.session.ICdmEntitySessionManagerObserver#changed()
-     */
     @Override
     public void changed() {
         ICdmEntitySession cdmEntitySession = cdmEntitySessionManager.getActiveSession();
index 15b7e6658f87164f72be455c7446ce6dba9d648e..dcf68babd94ab719d543b8704ed4697e36983a3b 100644 (file)
@@ -11,7 +11,6 @@ package eu.etaxonomy.taxeditor.service;
 import java.io.IOException;
 
 import org.apache.commons.codec.binary.Base64;
-import org.apache.commons.httpclient.methods.PostMethod;
 import org.apache.http.client.methods.HttpPost;
 import org.springframework.remoting.httpinvoker.HttpComponentsHttpInvokerRequestExecutor;
 import org.springframework.remoting.httpinvoker.HttpInvokerClientConfiguration;
index ecfae0eb7446adbf577b5b1cac55f73ebc5e2803..c2fa59497806d56ea5dbe67849f586ae2c140c0e 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Editor Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.editor;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Bundle-Activator: eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin
 Bundle-Vendor: %Bundle-Vendor.0
 Bundle-Localization: OSGI-INF/l10n/plugin
@@ -29,7 +29,7 @@ Require-Bundle: org.eclipse.ui,
  org.eclipse.zest.layouts,
  eu.etaxonomy.taxeditor.cdmlib,
  org.eclipse.ui.ide
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Bundle-ActivationPolicy: lazy
 Import-Package: org.eclipse.core.databinding.beans,
  org.eclipse.core.databinding.observable.list,
index 838b9514af65cf2fa786cf76c63e7ffdeab24fa9..e04dadc0c2e06f17d1b7930450dec646d948c561 100644 (file)
       </menuContribution>
       <menuContribution
             locationURI="popup:eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView">
-         <separator
-               name="eu.etaxonomy.taxeditor.editor.separator4"
-               visible="true">
-         </separator>
-         <dynamic
-               class="eu.etaxonomy.taxeditor.editor.view.derivate.contextMenu.DerivateViewContextMenu"
-               id="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateContextMenu">
-         </dynamic>
-         <dynamic
-               class="eu.etaxonomy.taxeditor.view.CdmViewerContextMenu"
-               id="eu.etaxonomy.taxeditor.editor.derivativeEditor.CdmViewerContextMenu">
-         </dynamic>
-         <separator
-               name="eu.etaxonomy.taxeditor.editor.separator1"
-               visible="true">
-         </separator>
          <command
                commandId="eu.etaxonomy.taxeditor.editor.derivative.toggleLinkWithTaxonSelection"
                label="%command.label.LINK_WITH_TAXON_SELECTION"
                label="%command.label.54"
                style="push">
          </command>
+         <separator
+               name="eu.etaxonomy.taxeditor.editor.separator1"
+               visible="true">
+         </separator>
+         <dynamic
+               class="eu.etaxonomy.taxeditor.editor.view.derivate.contextMenu.DerivateViewContextMenu"
+               id="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateContextMenu">
+         </dynamic>
+         <separator
+               name="eu.etaxonomy.taxeditor.editor.separator1"
+               visible="true">
+         </separator>
+         <dynamic
+               class="eu.etaxonomy.taxeditor.view.CdmViewerContextMenu"
+               id="eu.etaxonomy.taxeditor.editor.derivativeEditor.CdmViewerContextMenu">
+         </dynamic>
       </menuContribution>
       <menuContribution
             locationURI="popup:eu.etaxonomy.taxeditor.editor.view.dataimport.SpecimenImportEditor">
index 015d34e47dcb4aad4183b648ef883e1a2c894c80..b53d1ab50bcb02ca87d8b0a6514912f01a6ba9a3 100644 (file)
@@ -4,7 +4,7 @@
   <parent>
        <groupId>eu.etaxonomy</groupId>
        <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0</version>
   </parent>
   
   <modelVersion>4.0.0</modelVersion>
index 7241f84ffbdc77c2d2f34bb212e65229b4d9f0d4..e427b39e12a1fa99bdc71fb2cfc90acc1eaa844d 100644 (file)
@@ -122,6 +122,17 @@ IDirtyMarkable, IPartContentHasDetails, ISecuredEditor, IPartContentHasMedia {
         }
     }
 
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    protected void pageChange(int newPageIndex) {
+        if(getCurrentPage()==-1){
+            return;
+        }
+        super.pageChange(newPageIndex);
+    }
+
     /** {@inheritDoc} */
     @Override
     public void doSave(IProgressMonitor monitor) {
index 72aba134bdf7491d7bed15de667a78cd0c41aff8..597f3fdf2e17adeb5314296db3f8a243986382af 100644 (file)
@@ -250,6 +250,8 @@ public class Messages extends NLS {
     public static String ValidationDaemon_RUNNING_DAEMON;
     public static String ValidationDaemon_VALIDATION_EXCEPTION;
     public static String ValidationDaemon_VALIDATION_STOPPED;
+    public static String DeleteDerivateHandler_LABEL;
+    public static String DeleteDerivateHandler_SUCCESSFULL_BUT_EXCEPTIONS;
     static {
         // initialize resource bundle
         NLS.initializeMessages(BUNDLE_NAME, Messages.class);
index 93392a78873b00dd4e8bb8ffedbd3b7c8fef8e8f..394a2dbbb2f612cb55024c73475cfd8f4d3d6ca0 100644 (file)
@@ -206,6 +206,8 @@ OpenRelatedConceptHandler_COULD_NOT_OPEN_MESSAGE=Could not open the taxon: %s
 ListenToSelectionChangeContextMenu_LINK=Link with taxon selection
 ListenToSelectionChangeContextMenu_UNLINK=Unlink from taxon selection
 DeleteDerivateHandler_INVALID_SELECTION=Selection is not valid for this delete handler
+DeleteDerivateHandler_LABEL=Delete of derivates
+DeleteDerivateHandler_SUCCESSFULL_BUT_EXCEPTIONS=Delete was successfull, but with exceptions
 DeleteDescriptionElementOperation_DESC_NOT_FOUND=Couldn't find element's description!
 DeleteHandler_CONFIRM_DELETION=Confirm Deletion
 DeleteHandler_CONFIRM_DELETION_MESSAGE=Do you really want to delete the media?
index 870b8f5a6cff60f08e3a21f889f99ad037abc075..5e2ca74cfb6214e66d4079e30077558c91398036 100644 (file)
@@ -206,17 +206,20 @@ OpenRelatedConceptHandler_COULD_NOT_OPEN_MESSAGE=Konnte Taxon nicht 
 ListenToSelectionChangeContextMenu_LINK=Verknüpfe mit Taxonauswahl
 ListenToSelectionChangeContextMenu_UNLINK=Verknüpfung mit Taxonauswahl aufheben
 DeleteDerivateHandler_INVALID_SELECTION=Auswahl ungültig
+DeleteDerivateHandler_LABEL=Löschen von Derivaten
+DeleteDerivateHandler_SUCCESSFULL_BUT_EXCEPTIONS=Löschen war erfolgreich, aber es gab Exceptions
+DeleteDerivateHandler_CANCELLED=Das Löschen wurde abgebrochen
 OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS=Keine Specimens gefunden
 OpenDerivativeEditorForDescriptionElement_NO_SPECIMENS_MESSAGE=Keine Specimens für die Auswahl. (Gibt es vielleicht noch ungespeicherte Ã„nderungen?)
 OpenDerivativeEditorForTaxonNode_COULD_NOT_OPEN=Specimen-Editor konnte nicht geöffnet werden
 DeleteDescriptionElementOperation_DESC_NOT_FOUND=Beschreibung konnte nicht gefunden werden!
 DeleteHandler_CONFIRM_DELETION=Löschen bestätigen
-DeleteHandler_CONFIRM_DELETION_MESSAGE=Wollen sie wirklich das Medienobjektlöschen?
+DeleteHandler_CONFIRM_DELETION_MESSAGE=Wollen sie wirklich das Medienobjekt löschen?
 DeleteHandler_DELETE=Löschen
 DeleteHandler_INVALID_SELECTION=Auswahl ungültig für den DeleteHandler
 DeleteHandler_SKIP=Ãœberspringen
 DeleteMediaHandler_CONFIRM=Löschen bestätigen
-DeleteMediaHandler_CONFIRM_MESSAGE=Wollen sie wirklich das Medienobjektlöschen?
+DeleteMediaHandler_CONFIRM_MESSAGE=Wollen sie wirklich das Medienobjekt löschen?
 DeleteMediaHandler_DELETE=Löschen
 DeleteMediaHandler_SKIP=Ãœberspringen
 DerivateSearchComposite_ALL=Alle
index 6154ad8483acd68d0c41c8f1b3e9645d8638f372..859552af72983bade24498e26742aed18e55b828 100644 (file)
@@ -207,6 +207,7 @@ public class TaxonNameEditor extends EditorPart implements
                ISelectionProvider selectionProvider = getSite().getSelectionProvider();
                getSite().registerContextMenu(TaxonNameEditor.ID, menuManager,
                                selectionProvider);
+               menuManager.setRemoveAllWhenShown(true);
 
                parent.setData(taxon);
 
@@ -254,7 +255,7 @@ public class TaxonNameEditor extends EditorPart implements
         * @return a {@link eu.etaxonomy.cdm.model.taxon.Taxon} object.
         */
        public Taxon getTaxon() {
-               return (Taxon) HibernateProxyHelper.deproxy(taxon);
+               return HibernateProxyHelper.deproxy(taxon);
        }
 
        /**
index 9dda2a9301936ced28572f11bb4bcd5d9b819d2f..5194c7a99d61a14ad66ef653780cdff9df3d49f4 100644 (file)
@@ -107,17 +107,19 @@ public class DeleteTaxonBaseHandler extends AbstractHandler implements IHandler,
 
                AbstractUtility.executeOperation(operation);
                DeleteResult result = ((DeleteTaxonBaseOperation)operation).getResult();
-               if (result.isError()){
-            DeleteResultMessagingUtils.messageDialogWithDetails(result, Messages.DeleteDerivateOperation_DELETE_FAILED, TaxeditorEditorPlugin.PLUGIN_ID);
-        } else {
-            this.editor.redraw();
-                   if (!result.getUpdatedObjects().isEmpty()){
-                DeleteResultMessagingUtils.messageDialogWithDetails(result, Messages.DeleteTaxonBaseHandler_DELETE_SYNONYM_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS, TaxeditorEditorPlugin.PLUGIN_ID);
-            }
-               }
-                   if (!result.getUpdatedObjects().isEmpty()){
+               if (result != null){
+               if (result.isError()){
+                DeleteResultMessagingUtils.messageDialogWithDetails(result, Messages.DeleteDerivateOperation_DELETE_FAILED, TaxeditorEditorPlugin.PLUGIN_ID);
+            } else if (selectedElement instanceof Synonym){
+                this.editor.redraw();
+                   if (!result.getExceptions().isEmpty()){
+                    DeleteResultMessagingUtils.messageDialogWithDetails(result, Messages.DeleteTaxonBaseHandler_DELETE_SYNONYM_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS, TaxeditorEditorPlugin.PLUGIN_ID);
+                }
+               } else if (selectedElement instanceof Taxon && !result.getExceptions().isEmpty()){
+               this.editor.redraw();
                 DeleteResultMessagingUtils.messageDialogWithDetails(result, Messages.DeleteTaxonBaseHandler_DELETE_MISAPPLIEDNAME_SUCCESSFULL_BUT_REMAINING_RELATED_OBJECTS, TaxeditorEditorPlugin.PLUGIN_ID);
-                   }
+               }
+               }
 
 
        }
index 0a56c3cc8797a50cfb9749a387942b89a1171a6e..e81437b8dd93875b8a5e1de58945800cf2c285d8 100644 (file)
@@ -61,8 +61,8 @@ public class MoveSynonymToAnotherAcceptedTaxonHandler extends AbstractHandler im
                List<UUID> excludeTaxa = new ArrayList<UUID>();
                excludeTaxa.add(oldParent.getUuid());
 
-                               
-               TaxonNode newParentNode = TaxonNodeSelectionDialog.select(HandlerUtil.getActiveShell(event), editor.getConversationHolder(), Messages.MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON, excludeTaxa, null, ((TaxonEditorInput)input).getTaxonNode().getClassification());
+
+               TaxonNode newParentNode = TaxonNodeSelectionDialog.select(HandlerUtil.getActiveShell(event), editor.getConversationHolder(), Messages.MoveSynonymToAnotherAcceptedTaxonHandler_SELECT_ACC_TAXON, excludeTaxa,  ((TaxonEditorInput)input).getTaxonNode(), ((TaxonEditorInput)input).getTaxonNode().getClassification());
 
                if(newParentNode!=null){
                   MoveSynonymToAnotherAcceptedTaxonOperation operation = new MoveSynonymToAnotherAcceptedTaxonOperation(Messages.MoveSynonymToAnotherAcceptedTaxonHandler_CHANGE_ACC_TAXON, EditorUtil.getUndoContext(),
index abf93ef2da43e95dad65d0a8e4aa871cc4ea1446..ab7253831c6f03d6a5992bf9ff1bd4eaa36eed79 100644 (file)
@@ -19,7 +19,6 @@ import org.eclipse.ui.IWorkbenchPage;
 import eu.etaxonomy.cdm.api.application.ICdmRepository;
 import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
 import eu.etaxonomy.cdm.api.service.ITaxonService;
-import eu.etaxonomy.cdm.api.service.config.NameDeletionConfigurator;
 import eu.etaxonomy.cdm.api.service.config.TaxonBaseDeletionConfigurator;
 import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
 import eu.etaxonomy.cdm.model.reference.Reference;
@@ -86,11 +85,8 @@ public class DeleteMisapplicationOperation extends DeleteTaxonBaseOperation {
                controller = CdmStore.getCurrentApplicationConfiguration();
 
                ITaxonService service = controller.getTaxonService();
-               TaxonDeletionConfigurator config = new TaxonDeletionConfigurator();
-               NameDeletionConfigurator nameConfig = new NameDeletionConfigurator();
-               nameConfig.setRemoveAllNameRelationships(true);
-               config.setNameDeletionConfig(nameConfig);
-               result = service.deleteTaxon(misapplication.getUuid(), config, null);
+
+               result = service.deleteTaxon(misapplication.getUuid(), (TaxonDeletionConfigurator)configurator, null);
                monitor.worked(40);
 
                return postExecute(null);
index 605da7724008ef8065b623dcf69270f2fd54b33e..f8a9f0ea034dc3f6338e4ef6d410be95b5ff9587 100644 (file)
@@ -471,7 +471,11 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
     //FIXME:Remoting hack to make this work for remoting
     //This should actually be resolved using remoting post operations
     public void remove(Object obj) {
+        if (obj instanceof TreeNode){
+            obj = ((TreeNode)obj).getValue();
+        }
         rootElements.remove(obj);
+        Object o = this.derivateToRootEntityMap.remove(obj);
         viewer.setInput(rootElements);
     }
 
index e7a0de1a218c090ff3ca6260a14457fc98f862c0..34c7cec1bfb167ea5c5b279896a250c17d7ceedb 100644 (file)
@@ -9,29 +9,40 @@
 
 package eu.etaxonomy.taxeditor.editor.view.derivate.handler;
 
-import org.eclipse.core.commands.AbstractHandler;
 import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
 import org.eclipse.core.commands.common.NotDefinedException;
+import org.eclipse.core.commands.operations.AbstractOperation;
 import org.eclipse.core.commands.operations.IUndoContext;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
 import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.jface.viewers.TreeNode;
+import org.eclipse.ui.IEditorPart;
 import org.eclipse.ui.IWorkbenchPart;
 import org.eclipse.ui.handlers.HandlerUtil;
 
 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
+import eu.etaxonomy.cdm.api.service.DeleteResult;
+import eu.etaxonomy.cdm.api.service.IOccurrenceService;
 import eu.etaxonomy.cdm.api.service.config.SpecimenDeleteConfigurator;
+import eu.etaxonomy.cdm.api.service.molecular.ISequenceService;
 import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.molecular.Sequence;
 import eu.etaxonomy.cdm.model.molecular.SingleRead;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
+import eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin;
 import eu.etaxonomy.taxeditor.editor.l10n.Messages;
+import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
 import eu.etaxonomy.taxeditor.editor.view.derivate.operation.DeleteDerivateOperation;
-import eu.etaxonomy.taxeditor.model.AbstractUtility;
+import eu.etaxonomy.taxeditor.model.DeleteResultMessagingUtils;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
+import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
+import eu.etaxonomy.taxeditor.operation.RemotingCdmHandler;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+import eu.etaxonomy.taxeditor.ui.dialog.configurator.deleteConfigurator.DeleteConfiguratorDialog;
 import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateLabelProvider;
 
 /**
@@ -40,11 +51,140 @@ import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateLabelProvider;
  * @date Oct 21, 2014
  *
  */
-public class DeleteDerivateHandler extends AbstractHandler {
+public class DeleteDerivateHandler extends RemotingCdmHandler {
 
-    /** {@inheritDoc} */
+    SpecimenDeleteConfigurator deleteConfigurator;
+    IEditorPart editor;
+    TreeNode node;
+
+    /**
+     * @param label
+     */
+    public DeleteDerivateHandler(String label) {
+        super(label);
+
+    }
+
+    /**
+     * @param label
+     */
+    public DeleteDerivateHandler() {
+        super(Messages.DeleteDerivateHandler_LABEL);
+
+    }
+
+//    /** {@inheritDoc} */
+//    @Override
+//    public Object execute(ExecutionEvent event) throws ExecutionException {
+//        IStructuredSelection selection = (IStructuredSelection) HandlerUtil.getActiveSite(event).getSelectionProvider().getSelection();
+//
+//        IWorkbenchPart part = HandlerUtil.getActivePart(event);
+//        IPostOperationEnabled postOperationEnabled = (part instanceof IPostOperationEnabled) ? (IPostOperationEnabled) part : null;
+//
+//        try {
+//            String label = event.getCommand().getName();
+//
+//            IUndoContext undoContext = EditorUtil.getUndoContext();
+//
+//            if(selection.size()>0){
+//                Object object = selection.iterator().next();
+//
+//                if(object instanceof TreeNode){
+//                    Object value = ((TreeNode) object).getValue();
+//                    if(value instanceof SpecimenOrObservationBase<?> || value instanceof Sequence || value instanceof SingleRead){
+//                        if(postOperationEnabled instanceof IConversationEnabled){
+//                            ConversationHolder conversationHolder = ((IConversationEnabled) postOperationEnabled).getConversationHolder();
+//                            label += " "+DerivateLabelProvider.getDerivateText(value, conversationHolder); //$NON-NLS-1$
+//                        }
+//                        SpecimenDeleteConfigurator config = new SpecimenDeleteConfigurator();
+//                        boolean deepDelete = event.getCommand().getId().equals("eu.etaxonomy.taxeditor.editor.derivate.deepDelete"); //$NON-NLS-1$
+//                        config.setDeleteChildren(deepDelete);
+//                        config.setDeleteMolecularData(deepDelete);
+//                        DeleteDerivateOperation deleteDerivateOperation = new DeleteDerivateOperation(label, undoContext, (CdmBase) value, (TreeNode) object, postOperationEnabled, config);
+//                        IStatus status = AbstractUtility.executeOperation(deleteDerivateOperation);
+//                        DerivateView derivateView = (DerivateView)postOperationEnabled;
+//                        if(derivateView.postOperation(null)){
+//                            derivateView.remove(object);
+//
+//                           // derivateView.updateRootEntities();
+//                            //update DerivateView
+//
+//
+//                        }
+//                    }
+//                }
+//                else{
+//                    MessagingUtils.error(getClass(), Messages.DeleteDerivateHandler_INVALID_SELECTION, null);
+//                }
+//            }
+//
+//        } catch (NotDefinedException e) {
+//            MessagingUtils.warn(getClass(), "Command name not set"); //$NON-NLS-1$
+//        }
+//        return null;
+//    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public IStatus allowOperations(ExecutionEvent event) {
+        //check whether object can be deleted
+        editor = HandlerUtil.getActiveEditor(event);
+        IStructuredSelection selection = (IStructuredSelection) HandlerUtil
+                .getCurrentSelection(event);
+        AbstractPostOperation operation;
+        deleteConfigurator = new SpecimenDeleteConfigurator();
+
+        String confirmationQuestion = Messages.DeleteDerivateOperation_REALLY_DELETE;
+        if(deleteConfigurator.isDeleteChildren()){
+            confirmationQuestion += Messages.DeleteDerivateOperation_AND_CHILDREN;
+        }
+
+        if(editor.isDirty()){
+            MessagingUtils.warningDialog(DerivateView.VIEW_HAS_UNSAVED_CHANGES, this, DerivateView.YOU_NEED_TO_SAVE_BEFORE_PERFORMING_THIS_ACTION);
+            return Status.CANCEL_STATUS;
+        }
+
+        confirmationQuestion += "?"; //$NON-NLS-1$
+        if(!DeleteConfiguratorDialog.openConfirmWithConfigurator(deleteConfigurator, null, Messages.DeleteDerivateOperation_CONFIRM, confirmationQuestion)){
+            return Status.CANCEL_STATUS;
+        }
+        Object object = selection.iterator().next();
+        DeleteResult deleteResult;
+        if(object instanceof TreeNode){
+            Object value = ((TreeNode) object).getValue();
+            if(value instanceof SpecimenOrObservationBase<?> || value instanceof Sequence || value instanceof SingleRead){
+                if (value instanceof Sequence || value instanceof SingleRead){
+                    deleteResult = CdmStore.getService(ISequenceService.class).isDeletable(((CdmBase)value).getUuid(), deleteConfigurator);
+                } else{
+                    deleteResult = CdmStore.getService(IOccurrenceService.class).isDeletable(((CdmBase)value).getUuid(), deleteConfigurator);
+                }
+                if (deleteResult.isOk() || deleteResult.getExceptions().isEmpty()){ return Status.OK_STATUS;}
+                else{
+                    if (!deleteResult.isOk()){
+                        DeleteResultMessagingUtils.messageDialogWithDetails(deleteResult, Messages.DeleteDerivateOperation_DELETE_FAILED, TaxeditorEditorPlugin.PLUGIN_ID);
+                    } else {
+                        if (!deleteResult.getExceptions().isEmpty()){
+                            DeleteResultMessagingUtils.messageDialogWithDetails(deleteResult, Messages.DeleteDerivateHandler_SUCCESSFULL_BUT_EXCEPTIONS, TaxeditorEditorPlugin.PLUGIN_ID);
+                        }
+                    }
+
+                    return Status.CANCEL_STATUS;
+                    }
+            }
+
+        }
+
+        return Status.CANCEL_STATUS;
+
+    }
+
+    /**
+     * {@inheritDoc}
+     */
     @Override
-    public Object execute(ExecutionEvent event) throws ExecutionException {
+    public AbstractOperation prepareOperation(ExecutionEvent event) {
         IStructuredSelection selection = (IStructuredSelection) HandlerUtil.getActiveSite(event).getSelectionProvider().getSelection();
 
         IWorkbenchPart part = HandlerUtil.getActivePart(event);
@@ -59,28 +199,40 @@ public class DeleteDerivateHandler extends AbstractHandler {
                 Object object = selection.iterator().next();
 
                 if(object instanceof TreeNode){
+                    node = (TreeNode)object;
                     Object value = ((TreeNode) object).getValue();
                     if(value instanceof SpecimenOrObservationBase<?> || value instanceof Sequence || value instanceof SingleRead){
                         if(postOperationEnabled instanceof IConversationEnabled){
                             ConversationHolder conversationHolder = ((IConversationEnabled) postOperationEnabled).getConversationHolder();
                             label += " "+DerivateLabelProvider.getDerivateText(value, conversationHolder); //$NON-NLS-1$
                         }
-                        SpecimenDeleteConfigurator config = new SpecimenDeleteConfigurator();
-                        boolean deepDelete = event.getCommand().getId().equals("eu.etaxonomy.taxeditor.editor.derivate.deepDelete"); //$NON-NLS-1$
-                        config.setDeleteChildren(deepDelete);
-                        config.setDeleteMolecularData(deepDelete);
-                        DeleteDerivateOperation deleteDerivateOperation = new DeleteDerivateOperation(label, undoContext, (CdmBase) value, (TreeNode) object, postOperationEnabled, config);
-                        AbstractUtility.executeOperation(deleteDerivateOperation);
+
+
+                        DeleteDerivateOperation deleteDerivateOperation = new DeleteDerivateOperation(label, undoContext, (CdmBase) value, (TreeNode) object, postOperationEnabled, this.deleteConfigurator);
+                        return deleteDerivateOperation;
                     }
                 }
-                else{
-                    MessagingUtils.error(getClass(), Messages.DeleteDerivateHandler_INVALID_SELECTION, null);
-                }
             }
-
         } catch (NotDefinedException e) {
             MessagingUtils.warn(getClass(), "Command name not set"); //$NON-NLS-1$
         }
         return null;
+
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public void onComplete() {
+
+        IPostOperationEnabled postOperationEnabled = (editor instanceof IPostOperationEnabled) ? (IPostOperationEnabled) editor : null;
+        if (postOperationEnabled != null){
+            DerivateView derivateView = (DerivateView)postOperationEnabled;
+          if(derivateView.postOperation(null)){
+              derivateView.remove(node);
+
+          }
+        }
     }
 }
index 8a9d90226a15ea75c54fa77ed1dc72747678ad09..831f117e87fde1ddf44f0ef0a1acfa41ed3b2988 100644 (file)
@@ -16,7 +16,6 @@ import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.Status;
 import org.eclipse.jface.viewers.TreeNode;
-import org.eclipse.ui.ISaveablePart;
 
 import eu.etaxonomy.cdm.api.service.DeleteResult;
 import eu.etaxonomy.cdm.api.service.IOccurrenceService;
@@ -26,12 +25,10 @@ import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.molecular.Sequence;
 import eu.etaxonomy.cdm.model.molecular.SingleRead;
 import eu.etaxonomy.taxeditor.editor.l10n.Messages;
-import eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
 import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 import eu.etaxonomy.taxeditor.store.CdmStore;
-import eu.etaxonomy.taxeditor.ui.dialog.configurator.deleteConfigurator.DeleteConfiguratorDialog;
 
 /**
  *
@@ -60,20 +57,7 @@ public class DeleteDerivateOperation extends AbstractPostOperation<CdmBase> {
     /** {@inheritDoc} */
     @Override
     public IStatus execute(IProgressMonitor monitor, IAdaptable info) throws ExecutionException {
-        if(getPostOperationEnabled() instanceof ISaveablePart){
-            String confirmationQuestion = Messages.DeleteDerivateOperation_REALLY_DELETE;
-            if(deleteConfigurator.isDeleteChildren()){
-                confirmationQuestion += Messages.DeleteDerivateOperation_AND_CHILDREN;
-            }
-            confirmationQuestion += "?"; //$NON-NLS-1$
-            if(!DeleteConfiguratorDialog.openConfirmWithConfigurator(deleteConfigurator, null, Messages.DeleteDerivateOperation_CONFIRM, confirmationQuestion)){
-                return Status.CANCEL_STATUS;
-            }
-            if(((ISaveablePart) getPostOperationEnabled()).isDirty()){
-                MessagingUtils.warningDialog(DerivateView.VIEW_HAS_UNSAVED_CHANGES, this, DerivateView.YOU_NEED_TO_SAVE_BEFORE_PERFORMING_THIS_ACTION);
-                return Status.CANCEL_STATUS;
-            }
-        }
+
         DeleteResult deleteResult;
         if(element instanceof SingleRead && treeNode!=null
                 && treeNode.getValue().equals(element)
@@ -86,18 +70,10 @@ public class DeleteDerivateOperation extends AbstractPostOperation<CdmBase> {
         } else {
             deleteResult = CdmStore.getService(IOccurrenceService.class).delete(element.getUuid(), deleteConfigurator);
         }
-        if(deleteResult.isOk()){
-            if(getPostOperationEnabled() instanceof DerivateView){
-                DerivateView derivateView = (DerivateView) getPostOperationEnabled();
-                derivateView.remove(element);
-                //update DerivateView
-                derivateView.getConversationHolder().commit();
-                IStatus returnStatus = postExecute(null);
-                return returnStatus;
-            }
-        }
-        else{
+
+        if (!deleteResult.isOk()) {
             MessagingUtils.warningDialog(Messages.DeleteDerivateOperation_DELETE_FAILED, this, deleteResult.toString());
+
             return Status.CANCEL_STATUS;
         }
         return Status.OK_STATUS;
index bf84e9529d65a510d65b457c03dec54775ad0d1a..165cf74ee28af6ab6251ce03f5c797a1673d5c6c 100644 (file)
@@ -91,6 +91,8 @@ public class DerivateSearchCompositeController implements Listener{
         default:
             break;
         }
+        derivativeEditor.getCdmEntitySession().dispose();
+        derivativeEditor.getCdmEntitySession().bind();
 
         SearchManager searchManager = new SearchManager();
         List<SpecimenOrObservationBase> occurrences = searchManager.findOccurrences(config, true);
@@ -177,7 +179,7 @@ public class DerivateSearchCompositeController implements Listener{
             derivateSearchComposite.getComboTaxonAssignment().setEnabled(false);
         }
     }
-    
+
     public void setFocusOnSearchField(){
        derivateSearchComposite.getSearchField().setFocus();
     }
index 19fc669d10874a2a91f9823fa603cc632558a468..1da0001b93d5f1eb7e75843c1e67b3d27fb8a7fa 100644 (file)
@@ -17,8 +17,6 @@ import org.eclipse.core.commands.ExecutionEvent;
 import org.eclipse.core.commands.ExecutionException;
 import org.eclipse.core.commands.common.NotDefinedException;
 import org.eclipse.core.commands.operations.IUndoContext;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.jface.viewers.TreePath;
 import org.eclipse.jface.viewers.TreeSelection;
@@ -105,10 +103,7 @@ public class DeleteHandler extends AbstractHandler {
                                        // TODO use undo context specific to editor
                     MediaDeletionConfigurator config = new MediaDeletionConfigurator();
 
-                    DeleteConfiguratorDialog dialog;
-                    dialog = new DeleteConfiguratorDialog(config, HandlerUtil.getActiveShell(event), Messages.DeleteHandler_CONFIRM_DELETION,  null,  Messages.DeleteHandler_CONFIRM_DELETION_MESSAGE, MessageDialog.WARNING, new String[] { Messages.DeleteHandler_DELETE, Messages.DeleteHandler_SKIP }, 0);
-                    int result_dialog= dialog.open();
-                    if (result_dialog != Status.OK){
+                    if (!DeleteConfiguratorDialog.openConfirmWithConfigurator(config, HandlerUtil.getActiveShell(event), Messages.DeleteHandler_CONFIRM_DELETION,  Messages.DeleteHandler_CONFIRM_DELETION_MESSAGE)){
                         return null;
                     }
 
index 8059f630dce33859a37835a483aec6f394103039..7e3eb9f232d2a3cb2ce3f48f6d7e67a09ccaa953 100644 (file)
@@ -2,7 +2,7 @@
 <feature
       id="eu.etaxonomy.taxeditor.feature.jre.linux64"
       label="Taxonomic Editor JRE Linux64"
-      version="4.6.0"
+      version="4.7.0.qualifier"
       provider-name="EDIT"
       plugin="eu.etaxonomy.taxeditor.application"
       os="linux"
index 224b9dc6f959637e77ce89bf0cf50824f8406df6..cde72c185d7859bad0a5e4913bf2d0c065f8a21b 100644 (file)
@@ -3,7 +3,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <artifactId>eu.etaxonomy.taxeditor.feature.jre.linux64</artifactId>
index d5d7dce92a67e0f32faf6d4e495bbae459dd7f6b..20296539dbaf5d63914d0913aad4e3d080866620 100644 (file)
@@ -2,7 +2,7 @@
 <feature
       id="eu.etaxonomy.taxeditor.feature.platform"
       label="Taxeditor Dependencies"
-      version="4.6.0"
+      version="4.7.0"
       os="linux,macosx,win32"
       ws="cocoa,gtk,win32"
       arch="x86,x86_64">
       <update label="EDIT Taxonomic Editor" url="http://wp5.e-taxonomy.eu/taxeditor/update"/>
    </url>
 
-   <plugin
-         id="org.eclipse.ant.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.commands"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.contenttype"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.databinding"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.databinding.beans"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.expressions"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filebuffers"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.jobs"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.resources"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.runtime"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.runtime.compatibility.auth"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.runtime.compatibility.registry"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
+   <includes
+         id="org.eclipse.zest"
+         version="0.0.0"/>
 
-   <plugin
-         id="org.eclipse.core.variables"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
+   <includes
+         id="org.eclipse.emf.common"
+         version="0.0.0"/>
 
-   <plugin
-         id="org.eclipse.equinox.app"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
+   <includes
+         id="org.eclipse.emf.ecore"
+         version="0.0.0"/>
 
-   <plugin
-         id="org.eclipse.equinox.common"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
+   <includes
+         id="org.eclipse.rcp"
+         version="0.0.0"/>
 
-   <plugin
-         id="org.eclipse.equinox.preferences"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
+   <includes
+         id="org.eclipse.equinox.p2.user.ui"
+         version="0.0.0"/>
 
-   <plugin
-         id="org.eclipse.equinox.registry"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
+   <includes
+         id="org.eclipse.help"
+         version="0.0.0"/>
 
    <plugin
-         id="org.eclipse.equinox.security"
+         id="org.apache.log4j"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.equinox.security.macosx"
-         os="macosx"
+         id="org.hamcrest.library"
          download-size="0"
          install-size="0"
          version="0.0.0"
-         fragment="true"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.help"
+         id="org.apache.commons.codec"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.jface"
+         id="org.apache.commons.httpclient"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.jface.databinding"
+         id="org.eclipse.nebula.widgets.compositetable"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.jface.text"
+         id="org.hamcrest.core"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.osgi"
+         id="org.eclipse.ecf"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.osgi.services"
+         id="org.eclipse.ecf.filetransfer"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.swt"
+         id="org.eclipse.ecf.provider.filetransfer"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.text"
+         id="org.eclipse.ecf.identity"
          download-size="0"
          install-size="0"
          version="0.0.0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.ui"
+         id="org.eclipse.ui.ide"
          download-size="0"
          install-size="0"
          version="0.0.0"
          version="0.0.0"
          unpack="false"/>
 
-   <plugin
-         id="org.eclipse.ui.ide"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
    <plugin
          id="org.eclipse.ui.navigator"
          download-size="0"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.ui.views"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.views.properties.tabbed"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.workbench.texteditor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.update.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.update.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.update.core.win32"
-         os="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.win32.x86"
-         os="win32"
-         ws="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net.win32.x86"
-         os="win32"
-         ws="win32"
-         arch="x86"
+         id="org.eclipse.jface.text"
          download-size="0"
          install-size="0"
          version="0.0.0"
-         fragment="true"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.core.resources.win32.x86"
-         os="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
+         id="org.eclipse.core.filebuffers"
+         download-size="119"
+         install-size="260"
+         version="3.6.0.v20160503-1849"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.equinox.security.win32.x86"
-         os="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
+         id="org.eclipse.core.filesystem"
+         download-size="65"
+         install-size="122"
+         version="1.6.1.v20161113-2349"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.swt.win32.win32.x86"
-         os="win32"
-         ws="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
+         id="org.eclipse.text"
+         download-size="262"
+         install-size="528"
+         version="3.6.0.v20160503-1849"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.ui.win32"
-         os="win32"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
+         id="org.eclipse.core.resources"
+         download-size="862"
+         install-size="1850"
+         version="3.11.1.v20161107-2032"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.core.filesystem.linux.x86"
-         os="linux"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
+         id="org.eclipse.ui.workbench.texteditor"
+         download-size="651"
+         install-size="1377"
+         version="3.10.1.v20160818-1626"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.core.net.linux.x86"
-         os="linux"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
+         id="org.eclipse.ltk.core.refactoring"
+         download-size="336"
+         install-size="752"
+         version="3.7.0.v20160419-0705"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.equinox.launcher.gtk.linux.x86"
-         os="linux"
-         ws="gtk"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.swt.gtk.linux.x86"
-         os="linux"
-         ws="gtk"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
+         id="org.eclipse.ltk.ui.refactoring"
+         download-size="491"
+         install-size="1013"
+         version="3.8.0.v20160518-1817"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.equinox.launcher.cocoa.macosx"
-         os="macosx"
-         ws="cocoa"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher.win32.win32.x86"
-         os="win32"
-         ws="win32"
-         arch="x86"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.ui.cocoa"
-         os="macosx"
-         ws="cocoa"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
+         id="org.eclipse.compare"
+         download-size="780"
+         install-size="1626"
+         version="3.7.0.v20161024-1724"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.core.databinding.property"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
+         id="org.eclipse.team.core"
+         download-size="416"
+         install-size="874"
+         version="3.8.0.v20160418-1534"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.core.databinding.observable"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
+         id="org.eclipse.team.ui"
+         download-size="1500"
+         install-size="3218"
+         version="3.8.0.v20160518-1906"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.ecf"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
+         id="org.eclipse.compare.core"
+         download-size="65"
+         install-size="122"
+         version="3.6.0.v20160418-1534"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.ecf.filetransfer"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
+         id="org.eclipse.ui.views"
+         download-size="107"
+         install-size="194"
+         version="3.8.101.v20160816-1954"
          unpack="false"/>
 
    <plugin
-         id="org.eclipse.compare.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.identity"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.provider.filetransfer"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.commons.logging"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.security.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.simpleconfigurator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher.cocoa.macosx.x86_64"
-         os="macosx"
-         ws="cocoa"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.swt.cocoa.macosx.x86_64"
-         os="macosx"
-         ws="cocoa"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.linux.x86_64"
-         os="linux"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher.gtk.linux.x86_64"
-         os="linux"
-         ws="gtk"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.swt.gtk.linux.x86_64"
-         os="linux"
-         ws="gtk"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.compare"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ltk.core.refactoring"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ltk.ui.refactoring"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.team.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.team.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.ds"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.ui.sdk"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.util"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.updatechecker"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.operations"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.metadata"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.repository"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.director"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.engine"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.artifact.repository"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.metadata.repository"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.jarprocessor"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.pde.runtime"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.zest.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.zest.layouts"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.draw2d"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ui.views.log"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.win32.x86_64"
-         os="win32"
-         ws="win32"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.net.win32.x86_64"
-         os="win32"
-         ws="win32"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.launcher.win32.win32.x86_64"
-         os="win32"
-         ws="win32"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"/>
-
-   <plugin
-         id="org.eclipse.swt.win32.win32.x86_64"
-         os="win32"
-         ws="win32"
-         arch="x86_64"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="javax.servlet"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.core.filesystem.macosx"
-         os="macosx"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.help.base"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.help.webapp"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.jasper"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.jsp.jasper.registry"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.http.registry"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.jdt.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.help.ui"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.nebula.widgets.compositetable"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="javax.servlet.jsp"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.commons.el"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.jsp.jasper"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.transport.ecf"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.provider.filetransfer.httpclient"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.provider.filetransfer.httpclient.ssl"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.touchpoint.eclipse"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.frameworkadmin"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.frameworkadmin.equinox"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.console"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.simpleconfigurator.manipulator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.ui.sdk.scheduler"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.garbagecollector"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.directorywatcher"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.updatesite"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.extensionlocation"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.director.app"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.publisher"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.repository.tools"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.provider.filetransfer.ssl"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.ecf.ssl"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         fragment="true"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.commons.codec"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.touchpoint.natives"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.eclipse.equinox.p2.publisher.eclipse"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"/>
-
-   <plugin
-         id="org.eclipse.update.configurator"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.commons.httpclient"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="com.ibm.icu"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.sat4j.pb"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.lucene"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.apache.lucene.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
-         unpack="false"/>
-
-   <plugin
-         id="org.sat4j.core"
-         download-size="0"
-         install-size="0"
-         version="0.0.0"
+         id="org.eclipse.ui.views.properties.tabbed"
+         download-size="107"
+         install-size="220"
+         version="3.7.0.v20160310-0903"
          unpack="false"/>
 
    <plugin
-         id="org.apache.lucene.analysis"
+         id="org.eclipse.jdt.annotation"
          download-size="0"
          install-size="0"
          version="0.0.0"
index d9f812cab47da1a187905fd48d02eed6c448beb2..4cd32c41d17607957b01898e64f16853dec944f7 100644 (file)
@@ -3,7 +3,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>4.6.0</version>
+               <version>4.7.0</version>
        </parent>
        <modelVersion>4.0.0</modelVersion>
        <artifactId>eu.etaxonomy.taxeditor.feature.platform</artifactId>
index 869a2b65897baef5a448ae1103583676161b9a43..8bd9a55bc0b3ada42969ec257b0fe9156c5bd5d7 100644 (file)
@@ -2,7 +2,7 @@
 <feature
       id="eu.etaxonomy.taxeditor.feature"
       label="Taxonomic Editor"
-      version="4.6.0"
+      version="4.7.0"
       provider-name="EDIT"
       plugin="eu.etaxonomy.taxeditor.application"
       os="linux,macosx,win32"
          version="0.0.0"
          unpack="false"/>
 
+   <plugin
+         id="eu.etaxonomy.taxeditor.workbench"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
 </feature>
index 6018dd44a8cb0773ece96bbc3745a1a9f4683ffb..8e2c37abdffc8c27c02678414908857fb680ad9f 100644 (file)
@@ -3,7 +3,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <artifactId>eu.etaxonomy.taxeditor.feature</artifactId>
index 8b7ba11abb4ba7beea9ae6a660de4ad3b8c57f75..684e02ac9eaee4fd1faf52d29c0d2f99df4dc831 100644 (file)
@@ -2,12 +2,12 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Help
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.help; singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Bundle-Activator: eu.etaxonomy.taxeditor.help.Activator
 Bundle-Vendor: EDIT
 Require-Bundle: org.eclipse.ui,
  org.eclipse.core.runtime,
  org.eclipse.help.ui,
  org.eclipse.help.webapp
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Bundle-ActivationPolicy: lazy
index 41625f5b937f20f96167dea17dd7346cb1a700cc..2590ad25df024b887a81ed4fbaf2094efb7bf1d9 100644 (file)
@@ -3,7 +3,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>4.6.0</version>
+               <version>4.7.0</version>
        </parent>
 
        <modelVersion>4.0.0</modelVersion>
index 301288fcd16c29d7006e3d41421f4fd9e89c87a3..e25ab399d48ff6b8ee791ce4250f885e815c1ce2 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: eu.etaxonomy.taxeditor.molecular.lib
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.molecular.lib;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Bundle-ClassPath: .,
  lib/owlapi-xmlutils-4.1.4.jar,
  lib/commons-collections4-4.1.jar,
@@ -239,4 +239,4 @@ Export-Package: info.bioinfweb.commons,
 Bundle-ActivationPolicy: lazy
 Import-Package: javax.swing
 Require-Bundle: org.eclipse.swt
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
index 6760040a0ed0a5929fedfea1778047f79a01d6b8..9a0d96579b69f43d9814ad3aba95c92dd3955276 100644 (file)
@@ -7,7 +7,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0</version>
   </parent>
 
   <build>
index e1ba5e7376e9fbdeaef642aae70888cfc1473a30..a8da56f69468495dd684d000bf358ea04b359c9f 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Molecular Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.molecular;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Bundle-Activator: eu.etaxonomy.taxeditor.molecular.TaxeditorMolecularPlugin
 Require-Bundle: org.eclipse.ui,
  org.eclipse.core.runtime,
@@ -17,7 +17,7 @@ Require-Bundle: org.eclipse.ui,
  org.eclipse.core.databinding;bundle-version="1.4.0",
  org.eclipse.jface.databinding;bundle-version="1.5.0",
  org.eclipse.core.databinding.property;bundle-version="1.4.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Bundle-ActivationPolicy: lazy
 Bundle-Vendor: EDIT
 Export-Package: eu.etaxonomy.taxeditor.molecular,
index b659618ffbbeb66a817a0514ff388654c587899a..156a0c70fd9227e224b5cd6ad3d0f24402ec0712 100644 (file)
@@ -3,7 +3,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0</version>
   </parent>
 
   <modelVersion>4.0.0</modelVersion>
index 2a5308b144d49ca2f026603a72f25c2f43b41acc..ccddd5789838997310e13ec7581c881c32eaf1a3 100644 (file)
@@ -2,7 +2,8 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Navigation Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.navigation;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
+Bundle-Activator: eu.etaxonomy.taxeditor.navigation.internal.TaxeditorNavigationPlugin
 Bundle-Vendor: EDIT
 Export-Package: eu.etaxonomy.cdm,
  eu.etaxonomy.taxeditor.navigation,
@@ -18,13 +19,14 @@ Require-Bundle: org.eclipse.ui,
  org.eclipse.core.expressions,
  eu.etaxonomy.taxeditor.cdmlib,
  eu.etaxonomy.taxeditor.store,
- eu.etaxonomy.taxeditor.editor
-Bundle-ActivationPolicy: lazy
+ eu.etaxonomy.taxeditor.editor,
+ org.eclipse.e4.ui.model.workbench;bundle-version="1.2.0.v20160229-1459"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Import-Package: org.eclipse.core.resources,
  org.eclipse.core.runtime,
  org.eclipse.core.runtime.jobs,
  org.eclipse.equinox.app,
+ org.eclipse.osgi.util;version="1.1.0",
  org.eclipse.ui.forms.widgets,
  org.osgi.framework
-Bundle-Activator: eu.etaxonomy.taxeditor.navigation.internal.TaxeditorNavigationPlugin
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-ActivationPolicy: lazy
index 69ef8f5075faababb7f90300b2b33522fc25fb88..a91e33bdd84101031466963ea0cbe08056aea573 100644 (file)
@@ -1,6 +1,3 @@
-source.. = src/main/java/,\
-           src/test/java/,\
-           src/test/resources/
 output.. = target/classes/
 bin.includes = META-INF/,\
                .,\
@@ -10,7 +7,8 @@ bin.includes = META-INF/,\
                OSGI-INF/l10n/bundle.properties,\
                OSGI-INF/l10n/bundle_de.properties,\
                src/main/java/eu/etaxonomy/taxeditor/navigation/l10n/messages.properties,\
-               src/main/java/eu/etaxonomy/taxeditor/navigation/l10n/messages_de.properties
-               
-               
-
+               src/main/java/eu/etaxonomy/taxeditor/navigation/l10n/messages_de.properties,\
+               fragment.e4xmi
+source.. = src/main/java/,\
+           src/test/java/,\
+           src/test/resources/
diff --git a/eu.etaxonomy.taxeditor.navigation/fragment.e4xmi b/eu.etaxonomy.taxeditor.navigation/fragment.e4xmi
new file mode 100644 (file)
index 0000000..8b4287e
--- /dev/null
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="ASCII"?>
+<fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmlns:menu="http://www.eclipse.org/ui/2010/UIModel/application/ui/menu" xmi:id="_OhwnQCTfEeeiN5lBIuqN3g">
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_oDvMsCTfEeeiN5lBIuqN3g" featurename="children" parentElementId="eu.etaxonomy.taxeditor.workbench.menu.toolbar.0">
+    <elements xsi:type="menu:ToolControl" xmi:id="_7kZI4CTfEeeiN5lBIuqN3g" elementId="eu.etaxonomy.taxeditor.navigation.toolcontrol.search_bar" contributionURI="bundleclass://eu.etaxonomy.taxeditor.navigation/eu.etaxonomy.taxeditor.navigation.search.SearchBar"/>
+  </fragments>
+</fragment:ModelFragments>
index 57af053ac9c5fef2437b8dbd046907b17a72272f..bd413e583ce3628feab7ccdbbcf6496507a91c6a 100644 (file)
@@ -39,7 +39,7 @@
    <extension
          point="org.eclipse.ui.menus">
       <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu.file">
+            locationURI="menu:eu.etaxonomy.taxeditor.workbench.menu.file">
          <separator
                name="eu.etaxonomy.taxeditor.navigation.recentnames.separator"
                visible="true">
                name="taxeditor-navigation.separator1"
                visible="true">
          </separator>
-         <dynamic
-               class="eu.etaxonomy.taxeditor.view.CdmViewerContextMenu"
-               id="eu.etaxonomy.taxeditor.navigation.cdmViewerContextMenu">
-         </dynamic>
-         <separator
-               name="eu.etaxonomy.taxeditor.navigation.separator2">
-         </separator>
          <command
                commandId="eu.etaxonomy.taxeditor.navigator.command.update.changeAcceptedToSynonym"
                label="%command.label.6"
                name="taxeditor-navigation.separator2"
                visible="true">
          </separator>
-         <!--command
-               commandId="eu.etaxonomy.taxeditor.navigation.command.createChildTaxon"
-               label="New Child"
-               style="push">
-         </command>
-         <command
-               commandId="eu.etaxonomy.taxeditor.navigation.command.quickCreateChildTaxon"
-               label="Quick Add Child "
-               style="push">
-         </command-->
          <command
                commandId="org.eclipse.ui.file.import"
                label="%command.label.8"
                   </reference></and>
             </visibleWhen>
          </command>
-      </menuContribution>
-      <menuContribution
-            locationURI="toolbar:org.eclipse.ui.main.toolbar">
-         <toolbar
-               id="eu.etaxonomy.taxeditor.navigation.search.toolbar">
-            <control
-                  class="eu.etaxonomy.taxeditor.navigation.search.SearchBar">
-            </control>
-         </toolbar>
+         <separator
+               name="eu.etaxonomy.taxeditor.navigation.separator2"
+               visible="true">
+         </separator>
+         <dynamic
+               class="eu.etaxonomy.taxeditor.view.CdmViewerContextMenu"
+               id="eu.etaxonomy.taxeditor.navigation.cdmViewerContextMenu">
+         </dynamic>
+         <!--command
+               commandId="eu.etaxonomy.taxeditor.navigation.command.createChildTaxon"
+               label="New Child"
+               style="push">
+         </command>
+         <command
+               commandId="eu.etaxonomy.taxeditor.navigation.command.quickCreateChildTaxon"
+               label="Quick Add Child "
+               style="push">
+         </command-->
       </menuContribution>
       <menuContribution
             locationURI="menu:eu.etaxonomy.navigation.menu.new">
          </test>
       </definition>
    </extension>
+   <extension
+         id="id1"
+         point="org.eclipse.e4.workbench.model">
+      <fragment
+            apply="always"
+            uri="fragment.e4xmi">
+      </fragment>
+   </extension>
 </plugin>
index 23fb47350694bcaf542bef1e392b2edc7fb40d70..e7bddeeb768331b3499b79dcb76fd6a002d715e5 100644 (file)
@@ -3,7 +3,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>4.6.0</version>
+               <version>4.7.0</version>
        </parent>
 
        <modelVersion>4.0.0</modelVersion>
index 8fe81b987f82dc8d02d9455e8a8439af03ba41ef..348685a08dde6a112bedc12491dbae5801701b9a 100644 (file)
@@ -1,7 +1,7 @@
 ChangeAcceptedTaxonToSynonymHandler_CHOOSE_TAXON=Choose the accepted taxon
-ChangeAcceptedTaxonToSynonymHandler_CREATE_FAILED=Could not create Taxon
+ChangeAcceptedTaxonToSynonymHandler_CREATE_FAILED=Could not create taxon
 ChangeAcceptedTaxonToSynonymHandler_MOVE_SYNONYMY=Moving to synonymy
-ChangeAcceptedTaxonToSynonymHandler_MOVE_SYNONYMY_MESSAGE=The operation move accepted taxon to synonymy is available only for a single taxon.
+ChangeAcceptedTaxonToSynonymHandler_MOVE_SYNONYMY_MESSAGE=The operation "move accepted taxon to synonymy" is available only for a single taxon.
 ChangeAcceptedTaxonToSynonymHandler_PREREQUISITE=Prerequisite not met
 ChangeAcceptedTaxonToSynonymHandler_PREREQUISITE_MESSAGE=The accepted taxon must not have any childen. You need to move all childen to another taxon node in the TaxonNavigator before attempting to turn the accepted taxon into a synonym.
 ChangeAcceptedTaxonToSynonymOperation_CREATE_FAIL=Synonym creation not possible
@@ -27,7 +27,7 @@ DeleteHandler_SKIP=Skip
 DeleteHandler_THERE_ARE_CHILDNODES=\ There are childnodes, which will be deleted, too.
 DeleteHandler_THERE_ARE_CHILDREN=\ The tree has children, they will be deleted, too.
 DeleteOperation_ABORT=Delete abort
-DeleteOperation_ABORT_MESSAGE=The object could not be deleted, maybe there was no object selected.
+DeleteOperation_ABORT_MESSAGE=The object could not be deleted Maybe there was no object selected.
 DeleteOperation_DELETE_FAIL=TaxonNode could not be deleted.
 DeleteOperation_DELETE_SUCCESS=TaxonNode was successfully deleted, but related object(s) could not be deleted
 DeleteOperation_FAILED=Delete failed
@@ -149,4 +149,4 @@ TreeNodeDropAdapter_MOVING=Moving taxon
 TreeNodeDropAdapter_MOVING_MESSAGE=The operation move accepted taxon to other parent is available only for a single taxon.
 TreeNodeDropAdapter_TARGET_NODE=Target node
 TreeNodeDropAdapter_UNSAVED_PARENT=Unsaved Parent Taxon
-TreeNodeDropAdapter_UNSAVED_PARENT_MESSAGE=There are unsaved changes in the parent taxon. Pleas save first.
+TreeNodeDropAdapter_UNSAVED_PARENT_MESSAGE=There are unsaved changes in the parent taxon. Please save first.
index b94050fe66e55545abe180be511d6259ed3a7218..122d06dbdc2b9d3e67045c72a2d96ad0a51e5fc9 100644 (file)
@@ -1,97 +1,97 @@
-ChangeAcceptedTaxonToSynonymHandler_CHOOSE_TAXON=Choose the accepted taxon
-ChangeAcceptedTaxonToSynonymHandler_CREATE_FAILED=Could not create Taxon
-ChangeAcceptedTaxonToSynonymHandler_MOVE_SYNONYMY=Moving to synonymy
-ChangeAcceptedTaxonToSynonymHandler_MOVE_SYNONYMY_MESSAGE=The operation move accepted taxon to synonymy is available only for a single taxon.
-ChangeAcceptedTaxonToSynonymHandler_PREREQUISITE=Prerequisite not met
-ChangeAcceptedTaxonToSynonymHandler_PREREQUISITE_MESSAGE=The accepted taxon must not have any childen. You need to move all childen to another taxon node in the TaxonNavigator before attempting to turn the accepted taxon into a synonym.
-ChangeAcceptedTaxonToSynonymOperation_CREATE_FAIL=Synonym creation not possible
-ChangeAcceptedTaxonToSynonymOperation_CREATE_SUCCESS=Synonym created but taxon deletion not possible.
-ChangeAcceptedTaxonToSynonymOperation_OP_FAIL=Operation failed
-ClassificationLabelProvider_UNNAMED_TREE=Unnamed Taxonomic Tree
-CloneClassificationHandler_CLONE_CLASSIFICATION=Clone classification
-CreateClassificationHierarchyHandler_CREATE_HIERARCHY=Create Taxon Hierarchy
-CreateClassificationHierarchyHandler_FAILED=Failed to open Editor
-CreateClassificationHierarchyHandler_FAILED_MESSAGE=Could not open distribution view. The hierarchy is corrupted\!
-CreateNewTaxonHierarchyOperation_ADD_HIERARCHY=Add Hierarchy successful
-CreateNewTaxonHierarchyOperation_ADD_HIERARCHY_MESSAGE=New classification is %s\nCreated Genus: %d\nCreated Subspecies: %d
-CreateTaxonNode_CREATE_FAILED=Could not create taxon node
+ChangeAcceptedTaxonToSynonymHandler_CHOOSE_TAXON=Wählen Sie das akzeptierte Taxon
+ChangeAcceptedTaxonToSynonymHandler_CREATE_FAILED=Konnte Taxon nicht erstellen
+ChangeAcceptedTaxonToSynonymHandler_MOVE_SYNONYMY=Verschieben zur Synonymie
+ChangeAcceptedTaxonToSynonymHandler_MOVE_SYNONYMY_MESSAGE=Die Option "Akzeptiertes Taxon zur Synonymie verschieben" ist nur für ein einzelnes Taxon verfügbar
+ChangeAcceptedTaxonToSynonymHandler_PREREQUISITE=Vorbedingung nicht erfüllt
+ChangeAcceptedTaxonToSynonymHandler_PREREQUISITE_MESSAGE=Das akzeptierte Taxon darf keine Kindtaxa haben. Alle Kindtaxa müssen mit dem Taxonnavigator zu einem anderen Taxon verschoben werden, bevor das Taxon in die Synonymie verschoben werden kann.
+ChangeAcceptedTaxonToSynonymOperation_CREATE_FAIL=Synonymerstellung nicht möglich
+ChangeAcceptedTaxonToSynonymOperation_CREATE_SUCCESS=Synonym erstellt, aber das Löschen des Taxons ist nicht möglich.
+ChangeAcceptedTaxonToSynonymOperation_OP_FAIL=Vorgang fehlgeschlagen
+ClassificationLabelProvider_UNNAMED_TREE=Unbenannter taxonomischer BaumTree
+CloneClassificationHandler_CLONE_CLASSIFICATION=Klassifikation duplizieren
+CreateClassificationHierarchyHandler_CREATE_HIERARCHY=Taxonhierarchie erstellen
+CreateClassificationHierarchyHandler_FAILED=Öffnen des Editors fehlgeschlagen
+CreateClassificationHierarchyHandler_FAILED_MESSAGE=Konnte Verbreitungs-View nicht Ã¶ffnen.
+CreateNewTaxonHierarchyOperation_ADD_HIERARCHY=Hierarchie erfolgreich hinzugefügt
+CreateNewTaxonHierarchyOperation_ADD_HIERARCHY_MESSAGE=Neue Klassifikation ist %s\nErstellte Gattungen: %d\nErstellte Unterarten: %d
+CreateTaxonNode_CREATE_FAILED=Konnte Taxonknoten nicht herstellen
 DeleteHandler_9=Command name not set
-DeleteHandler_CONFIRM=Confirm deletion
-DeleteHandler_CONFIRM_DELETE=Confirm Deletion
-DeleteHandler_CONFIRM_MESSAGE=Do you want to delete the selected key(s)?
-DeleteHandler_DELETE_ALL=Delete all children
-DeleteHandler_DELETE_CLASSIFICATION=Do you really want to delete the classification?
-DeleteHandler_DELETE_NODE=Do you really want to delete the selected node(s)?
-DeleteHandler_MOVE_TO_PARENT=Move children to parent node
-DeleteHandler_SKIP=Skip
-DeleteHandler_THERE_ARE_CHILDNODES=\ There are childnodes, which will be deleted, too.
-DeleteHandler_THERE_ARE_CHILDREN=\ The tree has children, they will be deleted, too.
-DeleteOperation_ABORT=Delete abort
-DeleteOperation_ABORT_MESSAGE=The object could not be deleted, maybe there was no object selected.
-DeleteOperation_DELETE_FAIL=TaxonNode could not be deleted.
-DeleteOperation_DELETE_SUCCESS=TaxonNode was successfully deleted, but related object(s) could not be deleted
-DeleteOperation_FAILED=Delete failed
-EditPolytomousKeyNodesHandler_OPEN_KEYS=Opening Polytomous Keys
-MoveFactualDataHandler_CHOOSE_TAXON=Choose the accepted taxon
-MoveFactualDataHandler_CREATE_FAILED=Could not create Taxon
-MoveFactualDataHandler_UNSAVED_SOURCE=Unsaved Source Taxon
-MoveFactualDataHandler_UNSAVED_SOURCE_MESSAGE=There are unsaved changes in the source taxon. Please save first.
-MoveFactualDataHandler_UNSAVED_TARGET=Unsaved Target Taxon
-MoveFactualDataHandler_UNSAVED_TARGET_MESSAGE=There are unsaved changes in the target taxon. Please save first.
-MoveTaxonHandler_CHOOSE_ABOVE=Choose the taxon above the moved taxon.
-MoveTaxonHandler_CHOOSE_PARENT=Choose new parent
-MoveTaxonHandler_MOVE_TO_PARENT=Move taxon to new parent
-MoveTaxonHandler_TARGET_NODE=Target node
-MoveTaxonHandler_TARGET_NODE_MESSAGE=The choosen target node should be the parent?
-MoveTaxonHandler_UNSAVED_PARENT=Unsaved Parent Taxon
-MoveTaxonHandler_UNSAVED_PARENT_MESSAGE=There are unsaved changes in the parent taxon. Please save first.
-MoveTaxonOperation_NOT_IMPLEMENTED=Not implemented yet.
-NavigationUtil_CREATE_FAILED=Could not create Taxon
-NavigationUtil_INCORRECT_STATE=Incorrect state
+DeleteHandler_CONFIRM=Löschen bestätigen
+DeleteHandler_CONFIRM_DELETE=Löschen bestätigen
+DeleteHandler_CONFIRM_MESSAGE=Wollen wie Sie die ausgewählten Schlüssen löschen?
+DeleteHandler_DELETE_ALL=Alle Kinder löschen
+DeleteHandler_DELETE_CLASSIFICATION=Wollen Sie die Klassifikation wirklich löschen?
+DeleteHandler_DELETE_NODE=Wollen Sie die ausgewählten Knoten wirklich löschen?
+DeleteHandler_MOVE_TO_PARENT=Verschiebe Kinder zu Elternknoten
+DeleteHandler_SKIP=Ãœberspringen
+DeleteHandler_THERE_ARE_CHILDNODES=\ Es sind Kindknoten vorhanden, die auch gelöscht werden.
+DeleteHandler_THERE_ARE_CHILDREN=\ Der Baum hat Kindknoten, die auch gelöscht werden.
+DeleteOperation_ABORT=Löschen abbrechen
+DeleteOperation_ABORT_MESSAGE=Das Objekt konnte nicht gelöscht werden. Vielleicht wurde kein Objekt ausgewählt.
+DeleteOperation_DELETE_FAIL=Taxonknoten konnte nicht gelöscht werden.
+DeleteOperation_DELETE_SUCCESS=Taxonknoten erfolgreich gelöscht, aber referenzierende Objekte konnten nicht gelöscht werden.
+DeleteOperation_FAILED=Löschen fehlgeschlagen
+EditPolytomousKeyNodesHandler_OPEN_KEYS=Polytome Schlüssel Ã¶ffnen
+MoveFactualDataHandler_CHOOSE_TAXON=Wählen Sie das akzeptierte Taxon
+MoveFactualDataHandler_CREATE_FAILED=Konnte Taxon nicht erstellen
+MoveFactualDataHandler_UNSAVED_SOURCE=Ungespeichertes Quell-Taxon
+MoveFactualDataHandler_UNSAVED_SOURCE_MESSAGE=Es gibt ungespeicherte Ã„nderungen im Quell-Taxon. Bitte speichen Sie erst.
+MoveFactualDataHandler_UNSAVED_TARGET=Ungespeichertes Ziel-Taxon
+MoveFactualDataHandler_UNSAVED_TARGET_MESSAGE=Es gibt ungespeicherte Ã„nderungen im Ziel-Taxon. Bitte speichen Sie erst.
+MoveTaxonHandler_CHOOSE_ABOVE=Wählen Sie das Ã¼bergeordnete Taxon des zu verschiebenden Taxons.
+MoveTaxonHandler_CHOOSE_PARENT=Wählen Sie das Elterntaxon
+MoveTaxonHandler_MOVE_TO_PARENT=Verschiebe Taxon zum neuen Elterntaxon
+MoveTaxonHandler_TARGET_NODE=Zielknoten
+MoveTaxonHandler_TARGET_NODE_MESSAGE=Soll der Zielknoten der Elternknoten sein?
+MoveTaxonHandler_UNSAVED_PARENT=Ungespeichertes Eltern-Taxon
+MoveTaxonHandler_UNSAVED_PARENT_MESSAGE=Es gibt ungespeicherte Ã„nderungen im Eltern-Taxon. Bitte speichen Sie erst.
+MoveTaxonOperation_NOT_IMPLEMENTED=Noch nicht implementiert
+NavigationUtil_CREATE_FAILED=Konnte Taxon nicht erstellen
+NavigationUtil_INCORRECT_STATE=Ungütliger Zustand
 NavigationUtil_INCORRECT_STATE_MESSAGE=The accepted taxon is not in a taxonomic view. This should not have happened.
-NavigationUtil_MULTI_TREE=The accepted taxon is in multiple taxonomic trees. We currently do not know which one you want to open. This case is not handled yet by the software.
+NavigationUtil_MULTI_TREE=Das akzeptierte Taxon ist in mehreren taxonomischen Bäumen vorhanden. Dieser Zustand wird noch nicht von der Software unterstützt.
 NavigationUtil_NOT_FOUND=Cdm entity not found
 NavigationUtil_NOT_FOUND_MESSAGE=CDM entity could not be found in the database.
-NavigationUtil_NOT_IMPLEMENTED=Not implemented yet
-NavigationUtil_OPEN_ERROR=Error opening the editor
-NavigationUtil_ORPHAN_NAME_MESSAGE=You chose to open a name that has no connection to a taxon. The Editor does not support editing of such a content type at the moment.
-NavigationUtil_ORPHAN_TAXON=This taxon is not connected to a classification. Currently editing of such taxa is not supported yet.
+NavigationUtil_NOT_IMPLEMENTED=Noch nicht implementiert
+NavigationUtil_OPEN_ERROR=Fehler beim Ã–ffnen des Editors
+NavigationUtil_ORPHAN_NAME_MESSAGE=Sie versuchen eine Namen ohne Verbindung zu einem Taxon zu Ã¶ffnen. Der Taxonomic Editor unterstützt aktuell kein Editieren solcher Objekte.
+NavigationUtil_ORPHAN_TAXON=Das Taxon ist in keine Klassifikation vorhanden. Der Taxonomic Editor unterstützt aktuell kein Editieren solcher Objekte.
 NavigationUtil_UNKNOWN_TYPE=Unknown type
 NavigationUtil_UNKNOWN_TYPE_MESSAGE=There is no editor available to open this object.
 NavigationUtil_UNSUPPORTED_TYPE=Unsupported Type
 NavigationUtil_UNSUPPORTED_TYPE_MESSAGE=No editor exists for the current selection: 
-PolytomousKeyViewLabels_DELETE=Delete Polytomous Key
-PolytomousKeyViewLabels_OPEN_ERROR=Error opening Polytomous Key Editor
-PolytomousKeyViewLabels_UPDATE=Update All Polytomous Key Nodes
-PolytomousKeyViewPart_EXCEPTION=An exception occured while trying to open a selection
-PolytomousKeyViewPart_INIT=Initiating Polytomous Key Viewer
-PolytomousKeyViewPart_SHUTDOWN=Shutting down Polytomous Key Viewer
-PolytomousKeyViewPartDataChangeBehavior_CLEAR=Clearing Polytomous Key Viewer session
-PolytomousKeyViewPartDataChangeBehavior_REFRESH=Refreshing viewer
-PolytomousKeyViewPartDataChangeBehavior_UPDATE=Updating Polytomous Key Viewer
-RefreshPolytomousKeyNodesHandler_REFRESH=Refresh Polytomous Key Nodes
-RefreshPolytomousKeyNodesHandler_REFRESHING=Refreshing Polytomous Key Nodes
-RemotingChangeAcceptedTaxonToSynonymHandler_CHOOSE_TAXON=Choose the accepted taxon
-RemotingChangeAcceptedTaxonToSynonymOperation_CHANGE_OP=Change Accepted Taxon to Synonym operation
-RemotingDeletePolytomousKeyOperation_DELETE_OP=Delete Polytomous Key operation
-RemotingDeleteTaxonNodeHandler_NODE_DELETED=Node already deleted
-RemotingDeleteTaxonNodeHandler_NODE_DELETED_MESSAGE=The taxon node was already deleted. Please reopen the taxon navigator to refresh the view.
-RemotingDeleteTaxonNodeOperation_DELETE_OP=Delete Taxon Node operation
-RemotingMoveFactualDataHandler_CHOOSE_TAXA=Choose the accepted taxon
-RemotingMoveFactualDataHandler_CREATE_FAILED=Could not create Taxon
-RemotingMoveFactualDataOperation_MOVE_OP=Move Factual Data operation
-RemotingMoveTaxonNodeHandler_BEHIND=Behind
-RemotingMoveTaxonNodeHandler_CANCEL=Cancel
-RemotingMoveTaxonNodeHandler_CHILD=Child
-RemotingMoveTaxonNodeHandler_CHOOSE_PARENT=Choose new parent
-RemotingMoveTaxonNodeHandler_CHOOSE_TAXON=Choose the taxon above the moved taxon.
-RemotingMoveTaxonNodeHandler_TARGET_NODE=Target node
-RemotingMoveTaxonNodeHandler_TARGET_NODE_MESSAGE=Do you want to move the Taxonnode as child or behind the target node.
-RemotingMoveTaxonNodeHandler_UNSAVED_PARENT=Unsaved Parent Taxon
-RemotingMoveTaxonNodeHandler_UNSAVED_PARENT_MESSAGE=There are unsaved changes in the parent taxon. Please save first.
-RemotingMoveTaxonOperation_MOVE_OP=Move Taxon operation
-RemotingUpdatePolytomousKeyAllNodesOperation_UPDATE_OP=Update All Polytomous Key Nodes operation
-Root_CREATE_CLASSIFICATION=Creating initial classification
+PolytomousKeyViewLabels_DELETE=Polytomen Schlüssel löschen
+PolytomousKeyViewLabels_OPEN_ERROR=Öffnen des Polytomer-Schlüssel-Editors fehlgeschlagen
+PolytomousKeyViewLabels_UPDATE=Alle polytomen Schlüssen aktualisieren
+PolytomousKeyViewPart_EXCEPTION=Ein Fehler ist beim Ã–ffnen der Auswahl aufgetreten
+PolytomousKeyViewPart_INIT=Polytomer-Schlüssel-Editor wird initialisiert
+PolytomousKeyViewPart_SHUTDOWN=Schließe Polytomer-Schlüssel-Editor
+PolytomousKeyViewPartDataChangeBehavior_CLEAR=Lösche Sitzung des Polytomer-Schlüssel-Editors
+PolytomousKeyViewPartDataChangeBehavior_REFRESH=Polytomer-Schlüssel-Editor aktualisieren
+PolytomousKeyViewPartDataChangeBehavior_UPDATE=Polytomer-Schlüssel-Editor updaten
+RefreshPolytomousKeyNodesHandler_REFRESH=Polytome Schlüssel updaten
+RefreshPolytomousKeyNodesHandler_REFRESHING=Polytome Schlüssel aktualisieren
+RemotingChangeAcceptedTaxonToSynonymHandler_CHOOSE_TAXON=Wählen Sie das akzeptierte Taxon
+RemotingChangeAcceptedTaxonToSynonymOperation_CHANGE_OP=Akzeptiertes Taxon in Synonym umwandeln
+RemotingDeletePolytomousKeyOperation_DELETE_OP=Polytomen Schlüssel löschen
+RemotingDeleteTaxonNodeHandler_NODE_DELETED=Taxonknoten schon gelöscht
+RemotingDeleteTaxonNodeHandler_NODE_DELETED_MESSAGE=Der Taxonknoten wurde schon gelöscht. Bitte Ã–ffnen Sie den Taxonnavigator erneut um die Anzeige zu aktualisieren.
+RemotingDeleteTaxonNodeOperation_DELETE_OP=Taxonknoten löschen
+RemotingMoveFactualDataHandler_CHOOSE_TAXA=Wählen Sie das akzeptierte Taxon
+RemotingMoveFactualDataHandler_CREATE_FAILED=Konnte Taxon nicht erstellen
+RemotingMoveFactualDataOperation_MOVE_OP=Faktendaten verschieben
+RemotingMoveTaxonNodeHandler_BEHIND=Hinter
+RemotingMoveTaxonNodeHandler_CANCEL=Abbrechen
+RemotingMoveTaxonNodeHandler_CHILD=Kind
+RemotingMoveTaxonNodeHandler_CHOOSE_PARENT=Neuen Elternknoten wählen
+RemotingMoveTaxonNodeHandler_CHOOSE_TAXON=Wählen sie das Taxon Ã¼ber dem zu verschiebenden Taxon.
+RemotingMoveTaxonNodeHandler_TARGET_NODE=Zielknoten.
+RemotingMoveTaxonNodeHandler_TARGET_NODE_MESSAGE=Wollen Sie den Taxonknoten als Kind oder hinter den Zielknoten verschieben.
+RemotingMoveTaxonNodeHandler_UNSAVED_PARENT=Ungespeichertes Eltern-Taxon
+RemotingMoveTaxonNodeHandler_UNSAVED_PARENT_MESSAGE=Es gibt ungespeicherte Ã„nderungen im Eltern-Taxon. Bitte speichen Sie erst.
+RemotingMoveTaxonOperation_MOVE_OP=Taxon verschieben
+RemotingUpdatePolytomousKeyAllNodesOperation_UPDATE_OP=Alle polytomen Schlüssel updaten
+Root_CREATE_CLASSIFICATION=Initiale Klassifikation erstellen
 Root_MY_CLASSIFICATION=My Classification
 SearchBar_0=Benutze "*" f\u00FCr Platzhalter-Suche
 SearchBar_1=Suche
@@ -105,49 +105,49 @@ SearchBar_9=Umgangsprachliche Namen
 SearchResultLabelProvider_NAME=Name: 
 SearchResultLabelProvider_SYNONYM=Synonym: 
 SearchResultLabelProvider_TAXON=Taxon: 
-SearchResultView_CANCELLED=Cancelled
-SearchResultView_CNT_ENTITIES_FOUND=%d entities found
-SearchResultView_NO_RESULTS=Search returned no results
-SearchResultView_PERFORMING_SEARCH=Performing Search
-SearchResultView_REMOVE_SEARCH_RESULTS=Getting rid of search results
-SearchResultView_SEARCH=Search: '%s'
-SearchResultView_SEARCH_FOR=Search for:
-SearchResultView_SEARCH_STRING=Search String:
-SearchResultView_SEARCHING=Searching...
+SearchResultView_CANCELLED=Abgebrochen
+SearchResultView_CNT_ENTITIES_FOUND=%d Ergebnisse gefunden
+SearchResultView_NO_RESULTS=Die Suche lieferte keine Ergebnisse
+SearchResultView_PERFORMING_SEARCH=Suche...
+SearchResultView_REMOVE_SEARCH_RESULTS=Lösche Suchergebnisse
+SearchResultView_SEARCH=Suche: '%s'
+SearchResultView_SEARCH_FOR=Suche nach:
+SearchResultView_SEARCH_STRING=Such-Text:
+SearchResultView_SEARCHING=Suche...
 SearchResultView_STATUS=Status:
-SetSecundumForSubtreeOperation_CHANGE_SEC_OP=Change secundum reference for all children
-SetSecundumForSubtreeOperation_SET_SEC_TASK=Set secundum reference for subtree
-TaxonLinkHelper_CREATE_FAIL=Could not create Taxon
-TaxonNavigator_LOAD_DATASOURCE=Loading datasources
-TaxonNavigator_RESTORE=Restoring Taxon Navigator
-TaxonNavigator_SAVE_TASK=Saving Taxon Navigator State
-TaxonNavigator_TAXON_TREE=Taxonomic Tree
-TaxonNavigatorDataChangeBehavior_CLEAR_SESSION=Clearing Taxon Navigators session
-TaxonNavigatorDataChangeBehavior_REFRESH_VIEWER=Refreshing viewer
-TaxonNavigatorDataChangeBehavior_UPDATE_NAVIGATOR=Updating Taxon Navigator
-TaxonNavigatorLabels_CHANGE_ACC_TAXON=Change Accepted Taxon to Synonym
-TaxonNavigatorLabels_CLOSE_IMPOSSIBLE=Could not close related taxon name editor. Please close it manually and try again.
-TaxonNavigatorLabels_DELETE_TAXON=Delete Taxon Node
-TaxonNavigatorLabels_MOVE_FACTUAL_DATA=Move Factual Data
-TaxonNavigatorLabels_MOVE_TAXON=Move Taxon
-TaxonNavigatorLabels_NO_CHILDREN_ALLOWED=The chosen taxon must not have any childen. You need to move all childen to another taxon node in the TaxonNavigator before attempting to turn the accepted taxon into a synonym.
-TaxonNavigatorLabels_NOT_A_NODE=Selected object is not a taxon tree node
-TaxonNavigatorLabels_NOT_TAXON_SELECTED=No taxon tree node selected for operation.
-TaxonNavigatorLabels_ONLY_SINGLE_TAXON=The chosen operation is available only for a single taxon.
-TaxonNavigatorLabels_SET_SEC_FOR_CHILDREN=Set new Secundum Reference for all children.
-TaxonNavigatorLabels_UNSAVED_CHANGES=There are unsaved changes in the source taxon. Please save first.
-TaxonNodeLabelProvider_NO_TAXON=>NO TAXON<
-TaxonNodeLabelProvider_NODE_WITH_NO_TAXON=The taxon node does not have a taxon attached to it. Please check your import. TaxonNode: %s
+SetSecundumForSubtreeOperation_CHANGE_SEC_OP=Secundum Referenz für alle Kinder Ã¤ndern
+SetSecundumForSubtreeOperation_SET_SEC_TASK=Secundum Referenz für Teilbaum setzen
+TaxonLinkHelper_CREATE_FAIL=Konnte Taxon nicht erstellen
+TaxonNavigator_LOAD_DATASOURCE=Lade Datenquellen
+TaxonNavigator_RESTORE=Taxonnavigator wiederherstellen
+TaxonNavigator_SAVE_TASK=Speicher Zustand des Taxonnavigators
+TaxonNavigator_TAXON_TREE=Taxonomische Baum
+TaxonNavigatorDataChangeBehavior_CLEAR_SESSION=Lösche Sitzund des Taxonnavigators
+TaxonNavigatorDataChangeBehavior_REFRESH_VIEWER=Taxonnavigator aktualisieren
+TaxonNavigatorDataChangeBehavior_UPDATE_NAVIGATOR=Taxonnavigator updaten
+TaxonNavigatorLabels_CHANGE_ACC_TAXON=Akzeptiertes Taxon in Synonym umwandeln
+TaxonNavigatorLabels_CLOSE_IMPOSSIBLE=Konnte den Namenseditor nicht schließen. Bitte schließen Sie ihn manuell und versuchen es erneut.
+TaxonNavigatorLabels_DELETE_TAXON=Taxonknoten löschen
+TaxonNavigatorLabels_MOVE_FACTUAL_DATA=Faktendaten verschieben
+TaxonNavigatorLabels_MOVE_TAXON=Taxon verschieben
+TaxonNavigatorLabels_NO_CHILDREN_ALLOWED=Das ausgewählte Taxon darf keine Kindtaxa haben. Alle Kindtaxa müssen mit dem Taxonnavigator zu einem anderen Taxon verschoben werden, bevor das Taxon in ein Synonym umgewandelt werden kann.
+TaxonNavigatorLabels_NOT_A_NODE=Ausgewähltes Objekt ist kein Taxonknoten
+TaxonNavigatorLabels_NOT_TAXON_SELECTED=Kein Taxonknoten ausgewählt
+TaxonNavigatorLabels_ONLY_SINGLE_TAXON=Dieser Vorgang ist nur für einzelne Taxa möglich.
+TaxonNavigatorLabels_SET_SEC_FOR_CHILDREN=Neue secundum Referenz für alle Kinder setzen
+TaxonNavigatorLabels_UNSAVED_CHANGES=Es gibt Ã„nderungen in dem Quell-Taxon. Bitte speichern Sie erst.
+TaxonNodeLabelProvider_NO_TAXON=>KEIN TAXON<
+TaxonNodeLabelProvider_NODE_WITH_NO_TAXON=Der Taxonknoten enthält kein Taxon. Bitte Ã¼berprüfen Sie den Import. Taxonknoten: %s
 TaxonNodeLabelProvider_TAXON=Taxon: 
 TreeNodeDropAdapter_10=\ 
-TreeNodeDropAdapter_BEHIND=Behind
-TreeNodeDropAdapter_CANCEL=Cancel
-TreeNodeDropAdapter_CHILD=Child
-TreeNodeDropAdapter_MOVE_BEHIND=Do you want to move the Taxonnode as child or behind the target node.
-TreeNodeDropAdapter_MOVE_TAXON=Move Taxon
-TreeNodeDropAdapter_MOVING=Moving taxon
-TreeNodeDropAdapter_MOVING_MESSAGE=The operation move accepted taxon to other parent is available only for a single taxon.
-TreeNodeDropAdapter_TARGET_NODE=Target node
-TreeNodeDropAdapter_UNSAVED_PARENT=Unsaved Parent Taxon
-TreeNodeDropAdapter_UNSAVED_PARENT_MESSAGE=There are unsaved changes in the parent taxon. Pleas save first.
+TreeNodeDropAdapter_BEHIND=Hinter
+TreeNodeDropAdapter_CANCEL=Abbrechen
+TreeNodeDropAdapter_CHILD=Kind
+TreeNodeDropAdapter_MOVE_BEHIND=Wollen Sie den Taxonknoten als Kind oder hinter den Zielknoten verschieben.
+TreeNodeDropAdapter_MOVE_TAXON=Taxon verschieben
+TreeNodeDropAdapter_MOVING=Verschiebe Taxon
+TreeNodeDropAdapter_MOVING_MESSAGE=Dieser Vorgang ist nur für einzelne Taxa möglich.
+TreeNodeDropAdapter_TARGET_NODE=Zielknoten
+TreeNodeDropAdapter_UNSAVED_PARENT=Ungespeichertes Eltern-Taxon
+TreeNodeDropAdapter_UNSAVED_PARENT_MESSAGE=Es gibt Ã„nderungen in dem Eltern-Taxon. Bitte speichern Sie erst.
 
index b480b103f1564128015411c35ea9ed1a8cbc9811..a23f4786d1a3c122362ac3e2acd3b36a23593857 100644 (file)
@@ -16,7 +16,6 @@ import org.eclipse.jface.viewers.TreeSelection;
 import org.eclipse.ui.handlers.HandlerUtil;
 
 import eu.etaxonomy.cdm.api.conversation.ConversationHolderMock;
-import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.navigation.l10n.Messages;
 import eu.etaxonomy.taxeditor.navigation.navigator.TaxonNavigatorLabels;
@@ -37,7 +36,7 @@ public class RemotingChangeAcceptedTaxonToSynonymHandler extends RemotingCdmHand
             .getLogger(RemotingChangeAcceptedTaxonToSynonymHandler.class);
 
 
-    private ITaxonTreeNode oldTaxonNode;
+    private TaxonNode oldTaxonNode;
 
        /**
      * @param label
@@ -67,15 +66,15 @@ public class RemotingChangeAcceptedTaxonToSynonymHandler extends RemotingCdmHand
 
         // check that selected object is a taxon node
         Object obj = selection.iterator().next();
-        if(obj instanceof ITaxonTreeNode) {
-            oldTaxonNode = (ITaxonTreeNode)obj;
+        if(obj instanceof TaxonNode) {
+            oldTaxonNode = (TaxonNode)obj;
         } else {
             return new Status(IStatus.ERROR,
                     "unknown", //$NON-NLS-1$
                     TaxonNavigatorLabels.SELECTED_OBJECT_NOT_TREE_NODE_MESSAGE);
         }
         // check that the source taxon node does not have children
-        if(((TaxonNode)oldTaxonNode).getCountChildren() > 0) {
+        if(oldTaxonNode.getCountChildren() > 0) {
             return new Status(IStatus.ERROR,
                     "unknown", //$NON-NLS-1$
                     TaxonNavigatorLabels.SOURCE_TAXON_HAS_CHILDREN_MESSAGE);
@@ -83,7 +82,7 @@ public class RemotingChangeAcceptedTaxonToSynonymHandler extends RemotingCdmHand
         }
 
         // check if corresponding name editor is closed
-        boolean editorClosed = NavigatorHandlerUtils.closeObsoleteEditor(event, (TaxonNode) oldTaxonNode);
+        boolean editorClosed = NavigatorHandlerUtils.closeObsoleteEditor(event, oldTaxonNode);
         if(editorClosed != true) {
             return new Status(IStatus.ERROR,
                     "unknown", //$NON-NLS-1$
@@ -98,13 +97,13 @@ public class RemotingChangeAcceptedTaxonToSynonymHandler extends RemotingCdmHand
     @Override
     public AbstractOperation prepareOperation(ExecutionEvent event) {
         List<UUID> excludeTaxa = new ArrayList<UUID>();
-        excludeTaxa.add(((TaxonNode)oldTaxonNode).getTaxon().getUuid());
+        excludeTaxa.add(oldTaxonNode.getTaxon().getUuid());
         TaxonNode newAcceptedTaxonNode = TaxonNodeSelectionDialog.select(HandlerUtil.getActiveShell(event),
                 new ConversationHolderMock(),
                 Messages.RemotingChangeAcceptedTaxonToSynonymHandler_CHOOSE_TAXON,
                 excludeTaxa,
-                null,
-                ((TaxonNode)oldTaxonNode).getClassification());
+                oldTaxonNode,
+                oldTaxonNode.getClassification());
 
         if (newAcceptedTaxonNode == null) {
             return null;
index bbedbc1242fdf6aabee0372c3e3bff1be3e7b8d5..2f98ab90ffe2cbf1797f048c698c8c00ff0a75ee 100644 (file)
@@ -113,7 +113,7 @@ public class RemotingMoveTaxonNodeHandler extends RemotingCdmHandler {
                     new ConversationHolderMock(),
                     Messages.RemotingMoveTaxonNodeHandler_CHOOSE_PARENT,
                     excludeTaxa,
-                    null,
+                    oldTaxonNode,
                     oldTaxonNode.getClassification());
         }
 
index 6627094d5f5630d17750efc3c60033d3d7628098..8d49f3d58ec33bf67cd4455a464905576e918612 100755 (executable)
@@ -8,10 +8,6 @@
 */
 package eu.etaxonomy.taxeditor.navigation.navigator.handler;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.UUID;
-
 import org.apache.log4j.Logger;
 import org.eclipse.core.commands.ExecutionEvent;
 import org.eclipse.core.commands.operations.AbstractOperation;
@@ -22,7 +18,8 @@ import org.eclipse.jface.window.Window;
 import org.eclipse.jface.wizard.WizardDialog;
 import org.eclipse.ui.handlers.HandlerUtil;
 
-import eu.etaxonomy.cdm.api.service.config.SetSecundumForSubtreeConfigurator;
+import eu.etaxonomy.cdm.io.common.SetSecundumForSubtreeConfigurator;
+import eu.etaxonomy.cdm.model.taxon.Classification;
 import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
 import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 import eu.etaxonomy.taxeditor.navigation.navigator.TaxonNavigatorLabels;
@@ -70,8 +67,12 @@ public class SetSecReferenceForSubtreeHandler extends RemotingCdmHandler {
            // check that selected object is a taxon node
            Object obj = selection.iterator().next();
            if(obj instanceof ITaxonTreeNode) {
-               taxonNode = (ITaxonTreeNode)obj;
-           } else {
+               if (obj instanceof Classification){
+                   taxonNode = ((Classification)obj).getRootNode();
+               }else{
+                   taxonNode = (ITaxonTreeNode)obj;
+               }
+          } else{
                return new Status(IStatus.ERROR,
                        "unknown", //$NON-NLS-1$
                        TaxonNavigatorLabels.SELECTED_OBJECT_NOT_TREE_NODE_MESSAGE);
@@ -110,13 +111,7 @@ public class SetSecReferenceForSubtreeHandler extends RemotingCdmHandler {
         */
        @Override
        public AbstractOperation prepareOperation(ExecutionEvent event) {
-           List<UUID> excludeTaxa = new ArrayList<UUID>();
-           excludeTaxa.add(((TaxonNode)taxonNode).getTaxon().getUuid());
-
-
-
-
-           SetSecundumForSubtreeOperation operation =
+          SetSecundumForSubtreeOperation operation =
                    new SetSecundumForSubtreeOperation(event.getTrigger(),
                            false,
                            taxonNode.getUuid(),
index 77bcde715a757af4ca5dcf988f111f6161fb0854..2649537b74308b1b4165d6d409aec3344abf14ae 100755 (executable)
@@ -10,15 +10,25 @@ package eu.etaxonomy.taxeditor.navigation.navigator.operation;
 
 import java.util.UUID;
 
+import org.apache.log4j.Logger;
+import org.eclipse.core.runtime.Assert;
 import org.eclipse.core.runtime.IAdaptable;
 import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.progress.IProgressConstants;
 
 import eu.etaxonomy.cdm.api.application.CdmApplicationState;
 import eu.etaxonomy.cdm.api.application.CdmChangeEvent.Action;
-import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
 import eu.etaxonomy.cdm.api.service.UpdateResult;
-import eu.etaxonomy.cdm.api.service.config.SetSecundumForSubtreeConfigurator;
+import eu.etaxonomy.cdm.common.monitor.IRemotingProgressMonitor;
+import eu.etaxonomy.cdm.io.common.SetSecundumForSubtreeConfigurator;
+import eu.etaxonomy.cdm.io.service.IIOService;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.navigation.l10n.Messages;
+import eu.etaxonomy.taxeditor.operation.IPostMoniteredOperationEnabled;
 import eu.etaxonomy.taxeditor.operation.RemotingCdmUpdateOperation;
 
 /**
@@ -26,12 +36,14 @@ import eu.etaxonomy.taxeditor.operation.RemotingCdmUpdateOperation;
  * @date 10.02.2017
  *
  */
-public class SetSecundumForSubtreeOperation extends RemotingCdmUpdateOperation{
+public class SetSecundumForSubtreeOperation extends RemotingCdmUpdateOperation implements IPostMoniteredOperationEnabled{
 
     private final static String LABEL = Messages.SetSecundumForSubtreeOperation_CHANGE_SEC_OP;
-
+    private static final Logger logger = Logger
+            .getLogger(SetSecundumForSubtreeOperation.class);
     UUID parentUuid;
     SetSecundumForSubtreeConfigurator config;
+    UpdateResult updateResult = new UpdateResult();
 
     /**
      * @param label
@@ -53,10 +65,59 @@ public class SetSecundumForSubtreeOperation extends RemotingCdmUpdateOperation{
      */
     @Override
     protected UpdateResult doUpdateExecute(IProgressMonitor monitor, IAdaptable info) throws Exception {
-        monitor.beginTask(Messages.SetSecundumForSubtreeOperation_SET_SEC_TASK, 10);
-        UpdateResult result =  CdmApplicationState.getService(ITaxonNodeService.class).setSecundumForSubtree(config, null);
-        monitor.done();
-        return result;
+        Job job = createJob(monitor);
+        // configure the job
+        job.setProperty(IProgressConstants.KEEP_PROPERTY, true);
+        job.setUser(true);
+        // schedule job
+        job.schedule();
+
+        return updateResult;
+
+
     }
 
-}
+
+    private Job createJob(IProgressMonitor monitor){
+        Assert.isNotNull(config, "Configuration may not be null");
+
+        final Display display = Display.getDefault();
+
+        Job job = new Job(Messages.SetSecundumForSubtreeOperation_SET_SEC_TASK) {
+
+
+            @Override
+            protected IStatus run(IProgressMonitor monitor) {
+                                  IIOService ioService = CdmApplicationState.getIOService();
+                   final UUID uuid = ioService.monitUpdateData(config);
+                   Display.getDefault().asyncExec(new Runnable() {
+                       @Override
+                       public void run() {
+                           AbstractUtility.executeMoniteredOperation("Update: " + config.getClass().getSimpleName(),
+                                   uuid,
+                                   1000,
+                                   false,
+                                   SetSecundumForSubtreeOperation.this,
+                                   null);
+                       }
+                   });
+                   return Status.OK_STATUS;
+
+            }
+        };
+            return job;
+        }
+
+
+
+
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public void postOperation(IRemotingProgressMonitor monitor) {
+        // TODO Auto-generated method stub
+
+    }
+ }
index 9d4c93f61939cd00424478085050685fd494c4de..ee748ada0aee51fd4ea5cb0890f71031e81d15b6 100644 (file)
@@ -9,6 +9,8 @@
 
 package eu.etaxonomy.taxeditor.navigation.search;
 
+import javax.annotation.PostConstruct;
+
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.FocusEvent;
@@ -32,7 +34,6 @@ import org.eclipse.ui.IViewPart;
 import org.eclipse.ui.IWorkbenchPage;
 import org.eclipse.ui.PartInitException;
 import org.eclipse.ui.PlatformUI;
-import org.eclipse.ui.menus.WorkbenchWindowControlContribution;
 import org.eclipse.ui.swt.IFocusService;
 
 import eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator;
@@ -52,7 +53,7 @@ import eu.etaxonomy.taxeditor.store.CdmStore;
  * @created 15.04.2009
  * @version 1.0
  */
-public class SearchBar extends WorkbenchWindowControlContribution implements IContextListener{
+public class SearchBar implements IContextListener{
        private Text text_search;
        private String secondaryId;
        private ToolBar toolBar;
@@ -62,7 +63,7 @@ public class SearchBar extends WorkbenchWindowControlContribution implements ICo
        final private ConfigurationSelectionListener configurationListener = new ConfigurationSelectionListener();
 
        /** {@inheritDoc} */
-       @Override
+       @PostConstruct
        protected Control createControl(Composite parent) {
                Composite composite = new Composite(parent, SWT.NONE);
 
@@ -81,7 +82,7 @@ public class SearchBar extends WorkbenchWindowControlContribution implements ICo
         */
        private void registerAtFocusService() {
                IFocusService focusService =
-                       (IFocusService) PlatformUI.getWorkbench().getService(IFocusService.class);
+                       PlatformUI.getWorkbench().getService(IFocusService.class);
                if (focusService != null) {
                        focusService.addFocusTracker(text_search, "navigation.textControlId");
                }
index f7744fbe96487145860ab3d4248e8fa3627aa3fc..ff365b15ce2d9f9d7a02f6bb204cc4ade4e6e36e 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Printpublisher Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.printpublisher;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Require-Bundle: org.eclipse.osgi,
  org.eclipse.ui,
  eu.etaxonomy.taxeditor.cdmlib,
@@ -15,4 +15,4 @@ Import-Package: org.apache.log4j,
 Bundle-ActivationPolicy: lazy
 Bundle-Vendor: EDIT
 Bundle-Activator: eu.etaxonomy.taxeditor.printpublisher.internal.PrintpublisherPlugin
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
index e2c98274c4a702305a4f2554a466cb0505f86511..049370b92e29484191d256fa9a1ef116219e2ab3 100644 (file)
@@ -3,7 +3,7 @@
        <parent>
                <artifactId>taxeditor-parent</artifactId>
                <groupId>eu.etaxonomy</groupId>
-               <version>4.6.0</version>
+               <version>4.7.0</version>
        </parent>
 
        <modelVersion>4.0.0</modelVersion>
index 12115ea9c36eff51f485656c6d6cefb00865f0e2..86ba63dd9d343e1e9967ea9656ed406b4a286ad9 100644 (file)
@@ -2,9 +2,10 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: DataStore Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.store;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Bundle-Activator: eu.etaxonomy.taxeditor.store.internal.TaxeditorStorePlugin
 Bundle-Vendor: EDIT
+Bundle-Localization: OSGI-INF/l10n/bundle
 Export-Package: eu.etaxonomy.cdm,
  eu.etaxonomy.cdm.database,
  eu.etaxonomy.taxeditor.datasource,
@@ -70,8 +71,22 @@ Require-Bundle: org.eclipse.osgi,
  org.eclipse.core.databinding.beans,
  org.eclipse.core.databinding.observable,
  org.eclipse.core.databinding.property,
- org.eclipse.jface.databinding
+ org.eclipse.jface.databinding,
+ eu.etaxonomy.taxeditor.workbench,
+ org.eclipse.e4.core.di.annotations;bundle-version="1.5.0",
+ org.eclipse.e4.ui.di;bundle-version="1.1.100",
+ org.eclipse.e4.ui.workbench,
+ org.eclipse.e4.core.di,
+ org.eclipse.e4.core.commands;bundle-version="0.11.100",
+ org.eclipse.e4.ui.services;bundle-version="1.2.100",
+ org.eclipse.e4.ui.model.workbench;bundle-version="1.2.0",
+ org.eclipse.e4.core.contexts;bundle-version="1.5.1"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
 Import-Package: eu.etaxonomy.taxeditor.webapp,
+ javax.annotation;version="1.0.0";resolution:=optional,
+ javax.inject;version="1.0.0",
  org.eclipse.core.commands,
  org.eclipse.core.commands.operations,
  org.eclipse.core.expressions,
@@ -93,6 +108,3 @@ Import-Package: eu.etaxonomy.taxeditor.webapp,
  org.eclipse.ui.ide.undo,
  org.osgi.framework,
  org.osgi.service.prefs;version="1.1.1"
-Bundle-ActivationPolicy: lazy
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Bundle-Localization: OSGI-INF/l10n/bundle
index 411f2a9e8f515f8bd8d84ede4df4d051ff167742..dd326a2565893195ad294a8c7e6e3df774e709f4 100644 (file)
@@ -41,7 +41,6 @@ view.name.6 = Derivative Search
 view.name.7 = Specimen Search\r
 \r
 editor.name = Defined Term Editor\r
-menu.label = Show View\r
 command.label = Derivative Search\r
 command.label.0 = Details\r
 command.label.1 = Supplemental\r
@@ -175,4 +174,8 @@ command.name.OPEN_TAXONNODE_WIZARD = Open Taxon Node Wizard
 command.name.INSPECT_ACTIVE_SESSIONS = Inspect Active Session\r
 viewCommandMapping.viewerName.CLASSIFICATION_WIZARD = Classification Wizard\r
 viewCommandMapping.viewerName.TAXON_NODE_WIZARD = Taxon node Wizard\r
-command.label.CHANGE_PASSWORD = Change password
\ No newline at end of file
+command.label.CHANGE_PASSWORD = Change password\r
+wizard.name.22 = CDM light (csv)\r
+wizard.name.23 = Excel Distribution Data Update\r
+wizard.name.24 = RIS Reference\r
+command.label.25 = Import Preferences
\ No newline at end of file
index e4276d7d40d9a4853f03c97359407c91bd95e1e6..8f2376c2ee796b6223fe944e6535e3dfea0a4bd8 100644 (file)
@@ -41,7 +41,6 @@ view.name.6 = Derivatsuche
 view.name.7 = Specimensuche
 view.name.8 = GBif Specimen Import
 editor.name = Editor f\u00fcr definierte Begriffe 
-menu.label = Zeige Ansicht
 command.label = Derivatsuche
 command.label.0 = Details
 command.label.1 = Zusatzdaten
@@ -176,4 +175,8 @@ command.name.OPEN_TAXONNODE_WIZARD = \u00d6ffne Taxonknoten-Wizard
 command.name.INSPECT_ACTIVE_SESSIONS = Aktive Session untersuchen
 viewCommandMapping.viewerName.CLASSIFICATION_WIZARD = Klassifikations-Wizard
 viewCommandMapping.viewerName.TAXON_NODE_WIZARD = Taxonknoten-Wizard
-command.label.CHANGE_PASSWORD = Kennwort Ã¤ndern
\ No newline at end of file
+command.label.CHANGE_PASSWORD = Kennwort Ã¤ndern
+wizard.name.22 = CDM light (csv)
+wizard.name.23 = Excel Verbreitungsdaten Update
+wizard.name.24 = RIS Referenzen
+command.label.25 = Import Präferenzen
\ No newline at end of file
index d3038a6fedb22a26b84092b76348c3a2ebff4d05..65edf2e5e7b402e2cc281c79e3f5e004f861f1b9 100644 (file)
@@ -11,5 +11,6 @@ bin.includes = META-INF/,\
                OSGI-INF/l10n/bundle.properties,\
                OSGI-INF/l10n/bundle_de.properties,\
                src/main/java/eu/etaxonomy/taxeditor/l10n/messages.properties,\
-               src/main/java/eu/etaxonomy/taxeditor/l10n/messages_de.properties
+               src/main/java/eu/etaxonomy/taxeditor/l10n/messages_de.properties,\
+               fragment.e4xmi
 
diff --git a/eu.etaxonomy.taxeditor.store/fragment.e4xmi b/eu.etaxonomy.taxeditor.store/fragment.e4xmi
new file mode 100644 (file)
index 0000000..e55d3cb
--- /dev/null
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="ASCII"?>
+<fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:basic="http://www.eclipse.org/ui/2010/UIModel/application/descriptor/basic" xmlns:commands="http://www.eclipse.org/ui/2010/UIModel/application/commands" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmlns:menu="http://www.eclipse.org/ui/2010/UIModel/application/ui/menu" xmlns:ui="http://www.eclipse.org/ui/2010/UIModel/application/ui" xmi:id="_OhwnQCTfEeeiN5lBIuqN3g">
+  <imports xsi:type="commands:Command" xmi:id="_bnVKsCZxEeeQLpuomSmVoQ" elementId="eu.etaxonomy.taxeditor.command.openPart"/>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_xVa1wCXXEeex9MwMOgUeWw" featurename="descriptors" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="basic:PartDescriptor" xmi:id="_2xmxoCXXEeex9MwMOgUeWw" elementId="eu.etaxonomy.taxeditor.store.partdescriptor.sessionsView" label="%view.name.SESSIONS" closeable="true" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.view.sessions.SessionsViewPart"/>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_3rW8wCXaEeex9MwMOgUeWw" featurename="children" parentElementId="eu.etaxonomy.taxeditor.menu.showView" positionInList="after:bulkeditor.menus.openmenu">
+    <elements xsi:type="menu:HandledMenuItem" xmi:id="_K6sowCaGEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showViewMenu.details" label="%command.label.0" command="_bnVKsCZxEeeQLpuomSmVoQ">
+      <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_Qi6uICaJEeeTEd_pKXBflg" coreExpressionId="isCdmStoreConnected"/>
+      <parameters xmi:id="_h2OecCaIEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showView.parameter.sessionView" name="eu.etaxonomy.taxeditor.workbench.commandparameter.partName" value="eu.etaxonomy.taxeditor.view.detail"/>
+    </elements>
+    <elements xsi:type="menu:HandledMenuItem" xmi:id="_TlufMCaGEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showViewMenu.supplemental" label="%command.label.1" command="_bnVKsCZxEeeQLpuomSmVoQ">
+      <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_SwGXYCaJEeeTEd_pKXBflg" coreExpressionId="isCdmStoreConnected"/>
+      <parameters xmi:id="_pebl8CaIEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showView.parameter.sessionView" name="eu.etaxonomy.taxeditor.workbench.commandparameter.partName" value="eu.etaxonomy.taxeditor.view.supplementalData"/>
+    </elements>
+    <elements xsi:type="menu:MenuSeparator" xmi:id="_sI4r8CaGEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.menuseparator.0"/>
+    <elements xsi:type="menu:HandledMenuItem" xmi:id="_0Dn4cCaHEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showViewMenu.datasource" label="%command.label.2" command="_bnVKsCZxEeeQLpuomSmVoQ">
+      <parameters xmi:id="_54in8CaIEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showView.parameter.sessionView" name="eu.etaxonomy.taxeditor.workbench.commandparameter.partName" value="eu.etaxonomy.taxeditor.view.datasource"/>
+    </elements>
+    <elements xsi:type="menu:HandledMenuItem" xmi:id="_1riRcCaHEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showViewMenu.logView" toBeRendered="false" visible="false" label="%command.label.3" command="_bnVKsCZxEeeQLpuomSmVoQ">
+      <parameters xmi:id="_9VpA8CaIEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showView.parameter.sessionView" name="eu.etaxonomy.taxeditor.workbench.commandparameter.partName" value="org.eclipse.pde.runtime.LogView"/>
+    </elements>
+    <elements xsi:type="menu:HandledMenuItem" xmi:id="_3DcfkCaHEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showViewMenu.reporting" label="%command.label.4" command="_bnVKsCZxEeeQLpuomSmVoQ">
+      <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_UrBzACaJEeeTEd_pKXBflg" coreExpressionId="isCdmStoreConnected"/>
+      <parameters xmi:id="_-z-nMCaIEeeTEd_pKXBflg" elementId="eu.etaxonomy.taxeditor.store.showView.parameter.sessionView" name="eu.etaxonomy.taxeditor.workbench.commandparameter.partName" value="eu.etaxonomy.taxeditor.reporting.viewPart"/>
+    </elements>
+    <elements xsi:type="menu:HandledMenuItem" xmi:id="_jFskQCZyEeeQLpuomSmVoQ" elementId="eu.etaxonomy.taxeditor.store.showViewMenu.sessions" label="%view.name.SESSIONS" command="_bnVKsCZxEeeQLpuomSmVoQ">
+      <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_W-C-gCaJEeeTEd_pKXBflg" coreExpressionId="isCdmStoreConnected"/>
+      <parameters xmi:id="_BylIUCZzEeeQLpuomSmVoQ" elementId="eu.etaxonomy.taxeditor.store.showView.parameter.sessionView" name="eu.etaxonomy.taxeditor.workbench.commandparameter.partName" value="eu.etaxonomy.taxeditor.store.partdescriptor.sessionsView"/>
+    </elements>
+  </fragments>
+</fragment:ModelFragments>
index dba3174e308361f2f06b836f16b33946dcdf1ac5..d8c95af6b0a0e631ff3402b9e7d70e3596e8ff6e 100755 (executable)
    </extension>
    <extension
          point="org.eclipse.ui.menus">
-      <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu.window?before=eu.etaxonomy.taxeditor.application.windowMenu.last">
-         <menu
-               id="eu.etaxonomy.taxeditor.menu.showView"
-               label="%menu.label">
-            <command
-                  commandId="org.eclipse.ui.views.showView"
-                  id="eu.etaxonomy.taxeditor.store.showViewMenu.details"
-                  label="%command.label.0"
-                  style="push">
-               <parameter
-                     name="org.eclipse.ui.views.showView.viewId"
-                     value="eu.etaxonomy.taxeditor.view.detail">
-               </parameter>
-               <visibleWhen
-                     checkEnabled="true">
-                  <reference
-                        definitionId="isCdmStoreConnected">
-                  </reference>
-               </visibleWhen>
-            </command>
-            <command
-                  commandId="org.eclipse.ui.views.showView"
-                  id="org.eclipse.ui.views.showView.supplemental"
-                     label="%command.label.1"
-                  style="push">
-               <parameter
-                     name="org.eclipse.ui.views.showView.viewId"
-                     value="eu.etaxonomy.taxeditor.view.supplementalData">
-               </parameter>
-               <visibleWhen
-                     checkEnabled="true">
-                  <reference
-                        definitionId="isCdmStoreConnected">
-                  </reference>
-               </visibleWhen>
-            </command>
-            <!-- Originally used by validation framework, currently not in use -->
-       <!--        <command
-                        id="org.eclipse.ui.views.showView.problems"
-                    commandId="org.eclipse.ui.views.showView"
-                    label="Problems"
-                    style="push">
-                 <parameter
-                       name="org.eclipse.ui.views.showView.viewId"
-                       value="org.eclipse.ui.views.ProblemView">
-                 </parameter>
-              </command>  -->
-            <separator
-                  name="eu.etaxonomy.taxeditor.store.showViewMenu.internal"
-                  visible="true">
-            </separator>
-            <command
-                  commandId="org.eclipse.ui.views.showView"
-                  label="%command.label.2"
-                  style="push">
-               <parameter
-                     name="org.eclipse.ui.views.showView.viewId"
-                     value="eu.etaxonomy.taxeditor.view.datasource">
-               </parameter>
-            </command>
-            <command
-                  commandId="org.eclipse.ui.views.showView"
-                  label="%command.label.3"
-                  style="push">
-               <parameter
-                     name="org.eclipse.ui.views.showView.viewId"
-                     value="org.eclipse.pde.runtime.LogView">
-               </parameter>
-            </command>
-            <command
-                  commandId="org.eclipse.ui.views.showView"
-                  label="%command.label.4"
-                  style="push">
-               <parameter
-                     name="org.eclipse.ui.views.showView.viewId"
-                     value="eu.etaxonomy.taxeditor.reporting.viewPart">
-               </parameter>
-               <visibleWhen
-                     checkEnabled="true">
-                  <and>
-                     <reference
-                           definitionId="isShowExperimentalFeatures">
-                     </reference>
-                     <reference
-                           definitionId="isCdmStoreConnected">
-                     </reference>
-                  </and>
-               </visibleWhen>
-            </command>
-            <command
-                  commandId="org.eclipse.ui.views.showView"
-                  label="%command.label.SESSION"
-                  style="push">
-               <parameter
-                     name="org.eclipse.ui.views.showView.viewId"
-                     value="eu.etaxonomy.taxeditor.view.sessions.SessionsViewPart">
-               </parameter>
-               <visibleWhen
-                     checkEnabled="true">
-                  <reference
-                        definitionId="isCdmStoreConnected">
-                  </reference>
-               </visibleWhen>
-            </command>
-         </menu>
-      </menuContribution>
       <menuContribution 
          allPopups="false" 
-                 locationURI="menu:org.eclipse.ui.main.menu.window?before=eu.etaxonomy.taxeditor.application.windowMenu.last"> 
+                 locationURI="menu:eu.etaxonomy.taxeditor.workbench.menu.window?before=eu.etaxonomy.taxeditor.application.windowMenu.last"> 
            <dynamic 
                     class="eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermMenu" 
                    id="eu.etaxonomy.taxeditor.editor.definedterm.DefinedTermMenu"> 
         </dynamic> 
       </menuContribution>
       <menuContribution
-            locationURI="menu:org.eclipse.ui.main.menu.file?after=eu.etaxonomy.taxeditor.application.filemenu.io">
+            locationURI="menu:eu.etaxonomy.taxeditor.workbench.menu.file?after=eu.etaxonomy.taxeditor.application.filemenu.io">
          <command
                commandId="eu.etaxonomy.taxeditor.store.operations.showRemotingLoginWindow"
                label="%command.label.CONNECT"
                   definitionId="hasROLE_PROJECT_MANAGER">
             </reference>
          </activeWhen>
+      </handler>
+       <handler
+            class="eu.etaxonomy.taxeditor.handler.OpenImportPreferenceHandler"
+            commandId="eu.etaxonomy.taxeditor.store.open.OpenImportPreferenceHandler">
+            <activeWhen>
+            <reference
+                  definitionId="hasROLE_PROJECT_MANAGER">
+            </reference>
+         </activeWhen>
       </handler>
       <handler
             class="eu.etaxonomy.taxeditor.handler.SwitchUserHandler"
                typeId="eu.etaxonomy.taxeditor.uuidParameterType">
          </commandParameter>
       </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.handler.OpenDatabasePreferencesWizardHandler"
-            id="eu.etaxonomy.taxeditor.application.DatabaseSettings"
-            name="%command.label.23">
-      </command>
-      <command
-            defaultHandler="eu.etaxonomy.taxeditor.handler.OpenDatabaseRepairWizardHandler"
-            id="eu.etaxonomy.taxeditor.application.DatabaseRepairFunctionality"
-            name="%command.label.24">
-      </command>
    </extension>
    <extension
          point="org.eclipse.ui.commands">
             class="eu.etaxonomy.taxeditor.io.wizard.AbcdImportWizard"
             id="eu.etaxonomy.taxeditor.io.import.abcd"
             name="%wizard.name.3">
+      </wizard>
+       <wizard
+            category="eu.etaxonomy.taxeditor.import.category.cdm"
+            class="eu.etaxonomy.taxeditor.io.wizard.ExcelDistributionUpdateWizard"
+            id="eu.etaxonomy.taxeditor.io.import.excelDistribution"
+            name="%wizard.name.23">
+          <enabledWhen>
+            <reference
+                  definitionId="isShowExperimentalFeatures">
+            </reference></enabledWhen>
+      </wizard>
+       <wizard
+            category="eu.etaxonomy.taxeditor.import.category.cdm"
+            class="eu.etaxonomy.taxeditor.io.wizard.RISImportWizard"
+            id="eu.etaxonomy.taxeditor.io.import.risImport"
+            name="%wizard.name.24">
+          
       </wizard>
       <wizard
             category="eu.etaxonomy.taxeditor.import.category.cdm"
             id="eu.etaxonomy.taxeditor.io.export.csv_print"
             name="%wizard.name.20">
       </wizard>
+      <wizard
+            category="eu.etaxonomy.taxeditor.export.category.cdm"
+            class="eu.etaxonomy.taxeditor.io.wizard.OutputModelExportWizard"
+            id="eu.etaxonomy.taxeditor.io.export.output_model"
+            name="%wizard.name.22">
+      </wizard>
    </extension>
    <extension
          point="org.eclipse.ui.newWizards">
             </iterate>
          </with>
       </definition>
+      <definition
+            id="hasROLE_PROJECT_MANAGER_AND_isCdmStoreConnected">
+         <and>
+            <reference
+                  definitionId="hasROLE_PROJECT_MANAGER">
+            </reference>
+            <reference
+                  definitionId="isCdmStoreConnected">
+            </reference>
+         </and>
+      </definition>
 </extension>
 <extension
       point="org.eclipse.ui.activities">
          viewerName="%viewCommandMapping.viewerName.TAXON_NODE_WIZARD">
    </viewCommandMapping>
 </extension>
+<extension
+      id="id1"
+      point="org.eclipse.e4.workbench.model">
+   <fragment
+         apply="always"
+         uri="fragment.e4xmi">
+   </fragment>
+</extension>
 </plugin>
index fb676eb2d974a73c4fa4c1d79f79c93a1709a431..7f8e7105665e268572a2611b6b65282bf903ac14 100644 (file)
@@ -3,7 +3,7 @@
   <parent>
        <groupId>eu.etaxonomy</groupId>
        <artifactId>taxeditor-parent</artifactId>
-       <version>4.6.0</version>
+       <version>4.7.0</version>
   </parent>
 
   <modelVersion>4.0.0</modelVersion>
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/AbstractPreferenceWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/AbstractPreferenceWizard.java
new file mode 100755 (executable)
index 0000000..ff1efca
--- /dev/null
@@ -0,0 +1,62 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.databaseAdmin.wizard;
+
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.TabFolder;
+import org.eclipse.swt.widgets.TabItem;
+
+/**
+ * @author k.luther
+ * @date 26.04.2017
+ *
+ */
+public abstract class AbstractPreferenceWizard extends WizardPage {
+    /**
+     * @param pageName
+     */
+    protected AbstractPreferenceWizard(String pageName) {
+        super(pageName);
+
+    }
+    protected TabFolder tabFolder;
+    protected Composite composite;
+    /***
+     * Adds a tab to the page.
+     * @param text the tab label
+     */
+     public Composite addTab(String text)    {
+         if (tabFolder == null){
+             // initialize tab folder
+             if (composite == null) {
+                 composite = new Composite(getShell(), SWT.NONE);
+             }
+             tabFolder = new TabFolder(composite, SWT.NONE);
+             tabFolder.setLayoutData(new GridData(GridData.FILL_BOTH));
+         }
+
+         TabItem item = new TabItem(tabFolder, SWT.NONE);
+         item.setText(text);
+
+         Composite currentTab = new Composite(tabFolder, SWT.NULL);
+         GridLayout layout = new GridLayout();
+         currentTab.setLayout(layout);
+         currentTab.setFont(composite.getFont());
+        // currentTab.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+
+         item.setControl(currentTab);
+         return currentTab;
+
+     }
+
+}
old mode 100644 (file)
new mode 100755 (executable)
index e6b52b3..6f3ac0c
@@ -13,19 +13,16 @@ import java.util.List;
 import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.jface.wizard.IWizard;
 import org.eclipse.jface.wizard.IWizardPage;
-import org.eclipse.jface.wizard.WizardPage;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.SelectionAdapter;
 import org.eclipse.swt.events.SelectionEvent;
-import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.widgets.Button;
 import org.eclipse.swt.widgets.Combo;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.TabFolder;
-import org.eclipse.swt.widgets.TabItem;
 
+import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator;
 import eu.etaxonomy.cdm.model.metadata.CdmPreference;
 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
 import eu.etaxonomy.taxeditor.l10n.Messages;
@@ -39,7 +36,7 @@ import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
  * @date 01.11.2016
  *
  */
-public class DatabasePreferencesPage extends WizardPage implements IWizardPage{
+public class DatabasePreferencesPage extends AbstractPreferenceWizard implements IWizardPage{
 
     CdmPreference preferedNomenclaturalCode;
     NameDetailsConfigurator config ;
@@ -48,19 +45,18 @@ public class DatabasePreferencesPage extends WizardPage implements IWizardPage{
     CdmPreference showCollectingAreaInGeneralSectionPreference;
     CdmPreference showTaxonAssociationsPreference;
 
-
-    TabFolder tabFolder;
-
-    IPreferenceStore preferenceStore;
-    Composite composite;
     boolean isSimpleDetailsViewActivated;
+
     Composite child ;
+    NameDetailsViewComposite nameDetailsConfig;
+    protected NameDetailsViewComposite getNameDetailsConfig() {
+        return nameDetailsConfig;
+    }
 
-    private Combo nomenclaturalCodeCombo;
-    private Label nomenclaturalCodeLabel;
+    String selectedPreferenceKey = null;
 
-//    private UriWithLabelElement nomenclaturalCodeCombo;
-//    private Label nomenclaturalCodeLabel;
+    ListComponent biocaseProviderList;
+    Abcd206ImportConfigurator abcdImportConfigurator;
 
     String[][] labelAndValues;
 
@@ -71,267 +67,13 @@ public class DatabasePreferencesPage extends WizardPage implements IWizardPage{
         super(pageName);
         this.preferedNomenclaturalCode = PreferencesUtil.setPreferredNomenclaturalCode(null, false);
         this.config = PreferencesUtil.setPreferredNameDetailsConfiguration( false);
-        setPreferenceStore(PreferencesUtil.getPreferenceStore());
-
-    }
-
-    protected void setPreferenceStore(IPreferenceStore store){
-        this.preferenceStore = store;
-    }
-
-
-
-
-    /***
-    * Adds a tab to the page.
-    * @param text the tab label
-    */
-    public Composite addTab(String text)    {
-        if (tabFolder == null){
-            // initialize tab folder
-            if (composite == null) {
-                composite = new Composite(getShell(), SWT.NONE);
-            }
-            tabFolder = new TabFolder(composite, SWT.NONE);
-            tabFolder.setLayoutData(new GridData(GridData.FILL_BOTH));
+        if (config == null){
+            config = new NameDetailsConfigurator(false);
         }
 
-        TabItem item = new TabItem(tabFolder, SWT.NONE);
-        item.setText(text);
 
-        Composite currentTab = new Composite(tabFolder, SWT.NULL);
-        GridLayout layout = new GridLayout();
-        currentTab.setLayout(layout);
-        currentTab.setFont(composite.getFont());
-        currentTab.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
-
-        item.setControl(currentTab);
-        return currentTab;
     }
 
-    /**
-     * @param tabFolder
-     */
-    private void createNameDetailsConfiguration(Composite parent) {
-        if (composite == null){
-            composite = parent;
-        }
-       composite = addTab(Messages.DatabasePreferencesPage_details_view_configuration);
-//        TabItem tbtmNameDetailsConfiguration = new TabItem(tabFolder, SWT.NONE);
-//        Composite c2 = new Composite(tabFolder, SWT.BORDER);
-//        c2.setLayout(new GridLayout(1, true));
-//        tbtmNameDetailsConfiguration.setControl(c2);
-       // composite.setLayout(new GridLayout(1, true));
-       config = new NameDetailsConfigurator(true);
-
-      // Composite composite = new Composite(parent, SWT.NULL);
-       composite.setLayout(new GridLayout());
-
-       isSimpleDetailsViewActivated= PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_SECTION);
-       final Button activateCheckButton = new Button(composite, SWT.CHECK);
-       activateCheckButton.setText(Messages.DatabasePreferencesPage_show_only_simple_details_view);
-       activateCheckButton.setSelection(isSimpleDetailsViewActivated);
-       activateCheckButton.addSelectionListener(new SelectionAdapter(){
-       @Override
-       public void widgetSelected(SelectionEvent e) {
-           isSimpleDetailsViewActivated = activateCheckButton.getSelection();
-           PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_SECTION, isSimpleDetailsViewActivated);
-           if(isSimpleDetailsViewActivated){
-               child.setVisible(true);
-               child.setEnabled(true);
-           }else{
-               child.setVisible(false);
-               child.setEnabled(false);
-           }
-        }
-        });
-
-       child = new Composite(composite, SWT.NULL);
-       child.setLayout(new GridLayout());
-       child.setVisible(isSimpleDetailsViewActivated);
-
-       final Button showTaxon = new Button(child, SWT.CHECK);
-       boolean isShowTaxon = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_TAXON);
-       showTaxon.setText(Messages.DatabasePreferencesPage_show_taxon);
-       showTaxon.setSelection(isShowTaxon);
-       showTaxon.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowTaxon = showTaxon.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_TAXON, isShowTaxon);
-             }
-        });
-
-       final Button showLsid = new Button(child, SWT.CHECK);
-       boolean isShowLSID = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_LSID);
-       showLsid.setText(Messages.DatabasePreferencesPage_show_lsid);
-       showLsid.setSelection(isShowLSID);
-       showLsid.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowLSID = showLsid.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_LSID, isShowLSID);
-             }
-        });
-
-       final Button showNomenclaturalCode = new Button(child, SWT.CHECK);
-       boolean isShowNomenclaturalCode = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_CODE);
-       showNomenclaturalCode.setText(Messages.DatabasePreferencesPage_show_nomenclatural_code);
-       showNomenclaturalCode.setSelection(isShowNomenclaturalCode);
-       showNomenclaturalCode.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowNomenclaturalCode = showNomenclaturalCode.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_CODE, isShowNomenclaturalCode);
-             }
-        });
-
-       final Button showNameCache = new Button(child, SWT.CHECK);
-       boolean isShowNameCache = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAMECACHE);
-       showNameCache.setText(Messages.DatabasePreferencesPage_show_namecache);
-       showNameCache.setSelection(isShowNomenclaturalCode);
-       showNameCache.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowNameCache = showNameCache.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAMECACHE, isShowNameCache);
-             }
-        });
-       final Button showAppendedPhrase = new Button(child, SWT.CHECK);
-       boolean isShowAppendedPhrase = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_APPENDED_PHRASE);
-       showAppendedPhrase.setText(Messages.DatabasePreferencesPage_show_appended_phrase);
-       showAppendedPhrase.setSelection(isShowAppendedPhrase);
-       showAppendedPhrase.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowAppendedPhrase = showAppendedPhrase.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_APPENDED_PHRASE, isShowAppendedPhrase);
-             }
-        });
-
-       final Button showRank = new Button(child, SWT.CHECK);
-       boolean isShowRank = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_RANK);
-       showRank.setText(Messages.DatabasePreferencesPage_show_rank);
-       showRank.setSelection(isShowRank);
-       showRank.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowRank = showRank.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_RANK, isShowRank);
-             }
-        });
-       final Button showEpithets = new Button(child, SWT.CHECK);
-       boolean isShowEpithets = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_ATOMISED_EPITHETS);
-       showEpithets.setText(Messages.DatabasePreferencesPage_show_atomised_epithets);
-       showEpithets.setSelection(isShowEpithets);
-       showEpithets.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowEpithets = showEpithets.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_ATOMISED_EPITHETS, isShowEpithets);
-             }
-        });
-       final Button showAuthorshipCache = new Button(child, SWT.CHECK);
-       boolean isShowAuthorshipCache = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP_CACHE);
-       showAuthorshipCache.setText(Messages.DatabasePreferencesPage_show_authorship_cache);
-       showAuthorshipCache.setSelection(isShowAuthorshipCache);
-       showAuthorshipCache.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowAuthorshipCache = showAuthorshipCache.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP_CACHE, isShowAuthorshipCache);
-             }
-        });
-
-       final Button showAuthorship = new Button(child, SWT.CHECK);
-       boolean isShowAuthorship = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP);
-       showAuthorship.setText(Messages.DatabasePreferencesPage_show_author_section);
-       showAuthorship.setSelection(isShowAuthorship);
-       showAuthorship.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowAuthorship = showAuthorship.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP, isShowAuthorship);
-             }
-        });
-
-       final Button showNomenclaturalRef = new Button(child, SWT.CHECK);
-       boolean isShowNomenclaturalRef = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_REFERENCE);
-       showNomenclaturalRef.setText(Messages.DatabasePreferencesPage_Show_nomenclatural_Ref);
-       showNomenclaturalRef.setSelection(isShowNomenclaturalRef);
-       showNomenclaturalRef.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowNomenclaturalRef = showNomenclaturalRef.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_REFERENCE, isShowNomenclaturalRef);
-             }
-        });
-
-       final Button showNomenclaturalStatus = new Button(child, SWT.CHECK);
-       boolean isShowNomenclaturalStatus = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_STATUS);
-       showNomenclaturalStatus.setText(Messages.DatabasePreferencesPage_Show_nomenclaturalStatus);
-       showNomenclaturalStatus.setSelection(isShowNomenclaturalStatus);
-       showNomenclaturalStatus.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowNomenclaturalStatus = showNomenclaturalStatus.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_STATUS, isShowNomenclaturalStatus);
-             }
-        });
-
-       final Button showProtologue = new Button(child, SWT.CHECK);
-       boolean isShowProtologue = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_PROTOLOGUE);
-       showProtologue.setText(Messages.DatabasePreferencesPage_Show_Protologue);
-       showProtologue.setSelection(isShowProtologue);
-       showProtologue.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowProtologue = showProtologue.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_PROTOLOGUE, isShowProtologue);
-             }
-        });
-
-       final Button showTypeDesignation = new Button(child, SWT.CHECK);
-       boolean isShowTypeDesignation = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_TYPE_DESIGNATION);
-       showTypeDesignation.setText(Messages.DatabasePreferencesPage_Show_Type_designation);
-       showTypeDesignation.setSelection(isShowTypeDesignation);
-       showTypeDesignation.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowTypeDesignation = showTypeDesignation.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_TYPE_DESIGNATION, isShowTypeDesignation);
-             }
-        });
-
-
-       final Button showNameRelationship = new Button(child, SWT.CHECK);
-       boolean isShowNameRelationship = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAME_RELATIONSHIP);
-       showNameRelationship.setText(Messages.DatabasePreferencesPage_Show_NameRelations);
-       showNameRelationship.setSelection(isShowNameRelationship);
-       showNameRelationship.addSelectionListener(new SelectionAdapter(){
-            @Override
-            public void widgetSelected(SelectionEvent e) {
-                boolean isShowNameRelationship = showNameRelationship.getSelection();
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAME_RELATIONSHIP, isShowNameRelationship);
-             }
-        });
-
-       if(isSimpleDetailsViewActivated){
-           child.setEnabled(true);
-       }else{
-           child.setEnabled(false);
-       }
-
-
-
-       // Label emptyLabel = new Label(getFieldEditorParent(), 0);
-
-
-
-
-    }
-
-
 
     protected IPreferenceStore doGetPreferenceStore() {
         return PreferencesUtil.getPreferenceStore();
@@ -354,37 +96,24 @@ public class DatabasePreferencesPage extends WizardPage implements IWizardPage{
     }
 
 
-/**
-     *
-     */
-    void createNameDetailsViewConfig() {
-       config.setSimpleDetailsViewActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_SECTION));
-       config.setAppendedPhraseActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_APPENDED_PHRASE));
-       config.setAtomisedEpithetsActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_ATOMISED_EPITHETS));
-       config.setAuthorshipSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP));
-       config.setLSIDActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_LSID));
-       config.setNameCacheActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_CACHE));
-       config.setNameRelationsSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAME_RELATIONSHIP));
-       config.setNomenclaturalCodeActived(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_CODE));
-       config.setNomenclaturalStatusSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_STATUS));
-       config.setNomenclaturalReferenceSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_REFERENCE));
-       config.setProtologueActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_PROTOLOGUE));
-       config.setRankActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_RANK));
-       config.setSimpleDetailsViewActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_SECTION));
-       config.setTaxonSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_TAXON));
-       config.setTypeDesignationSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_TYPE_DESIGNATION));
-    }
+
 
     public void createNomenclaturalCodeTab(Composite parent){
-       composite = addTab(Messages.DatabasePreferencesPage_Define_Default_NomenclaturalCode);
-       nomenclaturalCodeCombo = new Combo(composite, SWT.READ_ONLY);
-      List<NomenclaturalCode> supportedCodes = NomenclaturalCodeHelper
+
+        Combo nomenclaturalCodeCombo;
+        Label nomenclaturalCodeLabel;
+
+        composite = addTab(Messages.DatabasePreferencesPage_Define_Default_NomenclaturalCode);
+        nomenclaturalCodeCombo = new Combo(composite, SWT.DROP_DOWN);
+
+        List<NomenclaturalCode> supportedCodes = NomenclaturalCodeHelper
               .getSupportedCodes();
-       for (NomenclaturalCode code: supportedCodes) {
+        for (NomenclaturalCode code: supportedCodes) {
            nomenclaturalCodeCombo.add(NomenclaturalCodeHelper
                    .getDescription(code));
 
        }
+        nomenclaturalCodeCombo.select(0);
        getLabelAndValues();
        //get the actual nomenclatural code and set it as selection: doGetPreferenceStore().getString(IPreferenceKeys.CDM_NOMENCLATURAL_CODE_KEY);
        nomenclaturalCodeCombo.addSelectionListener(new SelectionAdapter() {
@@ -392,7 +121,7 @@ public class DatabasePreferencesPage extends WizardPage implements IWizardPage{
         public void widgetSelected(SelectionEvent evt) {
 
                String name = nomenclaturalCodeCombo.getText();
-               String selectedPreferenceKey = null;
+
                for (String[] labelAndValue: labelAndValues){
                    if (labelAndValue[0].equals(name)){
                        selectedPreferenceKey = labelAndValue[1];
@@ -426,52 +155,25 @@ public class DatabasePreferencesPage extends WizardPage implements IWizardPage{
 
     public void createBiocaseProviderTab(Composite parent){
         composite = addTab(Messages.DatabasePreferencesPage_Biocase_Provider);
-        nomenclaturalCodeCombo = new Combo(composite, SWT.READ_ONLY);
-       List<NomenclaturalCode> supportedCodes = NomenclaturalCodeHelper
-               .getSupportedCodes();
-        for (NomenclaturalCode code: supportedCodes) {
-            nomenclaturalCodeCombo.add(NomenclaturalCodeHelper
-                    .getDescription(code));
-
-        }
-        getLabelAndValues();
-        //get the actual nomenclatural code and set it as selection: doGetPreferenceStore().getString(IPreferenceKeys.CDM_NOMENCLATURAL_CODE_KEY);
-        nomenclaturalCodeCombo.addSelectionListener(new SelectionAdapter() {
-            @Override
-         public void widgetSelected(SelectionEvent evt) {
-
-                String name = nomenclaturalCodeCombo.getText();
-                String selectedPreferenceKey = null;
-                for (String[] labelAndValue: labelAndValues){
-                    if (labelAndValue[0].equals(name)){
-                        selectedPreferenceKey = labelAndValue[1];
-                    }
-                }
-
-
-                PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.CDM_NOMENCLATURAL_CODE_KEY, selectedPreferenceKey);
-
-            }
-        });
-        nomenclaturalCodeLabel = new Label(composite, SWT.READ_ONLY);
-
-
-         final Button useLocalPreference = new Button(composite, SWT.CHECK);
-         boolean isUseLocalPreference = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ALLOW_OVERRIDE_NOMENCLATURAL_CODE_KEY);
-         useLocalPreference.setText(Messages.DatabasePreferencesPage_UseLocalPreferences);
-         useLocalPreference.setSelection(isUseLocalPreference);
-         useLocalPreference.addSelectionListener(new SelectionAdapter(){
-              @Override
-              public void widgetSelected(SelectionEvent e) {
-                  boolean isUseLocalPreference = useLocalPreference.getSelection();
-                  PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ALLOW_OVERRIDE_NOMENCLATURAL_CODE_KEY, isUseLocalPreference);
-               }
-          });
-
+        GridLayout gridLayout = new GridLayout();
+        gridLayout.numColumns = 2;
+        composite.setLayout(gridLayout);
+        biocaseProviderList = new ListComponent(composite, SWT.SCROLL_LINE);
 
+ }
 
+    public ListComponent getBiocaseProviderList() {
+        return biocaseProviderList;
+    }
 
- }
+    public void createNameDetailsViewConfigurationTab(Composite parent, NameDetailsConfigurator config){
+        composite = parent;
+        composite = addTab(Messages.DatabasePreferencesPage_details_view_configuration);
+        GridLayout gridLayout = new GridLayout();
+        gridLayout.numColumns = 2;
+        composite.setLayout(gridLayout);
+        nameDetailsConfig = new NameDetailsViewComposite(composite, SWT.SCROLL_LINE, config);
+    }
 
 
     public void createSpecimenOrObservationTab(Composite parent){
@@ -608,10 +310,11 @@ public void setWizard(IWizard newWizard) {
  */
 @Override
 public void createControl(Composite parent) {
-    createNameDetailsConfiguration(parent);
+    createNameDetailsViewConfigurationTab(parent, config);
     createNomenclaturalCodeTab(parent);
 
     createSpecimenOrObservationTab(parent);
+    createBiocaseProviderTab(parent);
     setControl(parent);
 }
 
@@ -619,10 +322,40 @@ public void createControl(Composite parent) {
  * @return
  */
 public NameDetailsConfigurator getConfig() {
-
     return config;
 }
 
+/**
+ *
+ */
+public Abcd206ImportConfigurator getAbcdImportConfig() {
+    return abcdImportConfigurator;
+
+}
+
+/**
+ * @return
+ */
+public void createAbcdImportConfig() {
+    this.abcdImportConfigurator.setAddIndividualsAssociationsSuchAsSpecimenAndObservations(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ADD_INDIVIDUALS_ASSOCIATIONS_SUCH_AS_SPECIMEN_AND_OBSERVATIONS));
+    this.abcdImportConfigurator.setAddMediaAsMediaSpecimen(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ADD_MEDIA_AS_MEDIASPECIMEN));
+    this.abcdImportConfigurator.setAllowReuseOtherClassifications(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ALLOW_REUSE_OTHER_CLASSIFICATIONS));
+    //this.abcdImportConfigurator.setClassificationUuid(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_CLASSIFICATION_UUID));
+    this.abcdImportConfigurator.setDeduplicateClassifications(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DEDUPLICATE_CLASSIFICATIONS));
+    this.abcdImportConfigurator.setDeduplicateReferences(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DEDUPLICATE_REFERENCES));
+   // this.abcdImportConfigurator.setDefaultAuthor(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DEFAULT_AUTHOR));
+    this.abcdImportConfigurator.setGetSiblings(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DO_SIBLINGS));
+    this.abcdImportConfigurator.setIgnoreAuthorship(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_IGNORE_AUTHORSHIP));
+    this.abcdImportConfigurator.setIgnoreImportOfExistingSpecimen(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_IGNORE_IMPORT_OF_EXISTING_SPECIMEN));
+    this.abcdImportConfigurator.setMapUnitIdToAccessionNumber(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TO_ACCESSION_NUMBER));
+    this.abcdImportConfigurator.setMapUnitIdToBarcode(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TO_BARCODE));
+    this.abcdImportConfigurator.setMapUnitIdToCatalogNumber(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TOCATALOG_NUMBER));
+    this.abcdImportConfigurator.setMoveNewTaxaToDefaultClassification(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MOVE_NEW_TAXA_TO_DEFAULT_CLASSIFICATION));
+    this.abcdImportConfigurator.setReuseExistingDescriptiveGroups(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_DESCRIPTIVE_GROUPS));
+    this.abcdImportConfigurator.setReuseExistingTaxaWhenPossible(doGetPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_TAXA_WHEN_POSSIBLE));
+
+}
+
 
 
 
index 54544acf4d37d3180eb4aef55e8acffb4da05f66..43b9701c2716c4e4f6f6734b0be1e0592decc7dd 100644 (file)
@@ -8,6 +8,7 @@
 */
 package eu.etaxonomy.taxeditor.databaseAdmin.wizard;
 
+import org.eclipse.jface.wizard.IWizardPage;
 import org.eclipse.jface.wizard.Wizard;
 
 import eu.etaxonomy.cdm.api.application.ICdmRepository;
@@ -28,12 +29,13 @@ public class DatabasePreferencesWizard extends Wizard {
     public DatabasePreferencesPage preferencePage;
 
 
+
     public DatabasePreferencesWizard() {
         setWindowTitle("Database Preferences Wizard");
 
         preferencePage = new DatabasePreferencesPage("Database Preferences");
-       // preferencePage.setDescription("Choose which nomenclatural code you would like to use for scientific names unless otherwise specified.");
-       // preferencePage.init(PlatformUI.getWorkbench());
+
+
     }
 
 
@@ -64,8 +66,7 @@ public class DatabasePreferencesWizard extends Wizard {
         IPreferenceService service = controller.getPreferenceService();
         service.set(pref);
 
-        getPreferencePage().createNameDetailsViewConfig();
-        value = getPreferencePage().getConfig().toString();
+        value = getPreferencePage().getNameDetailsConfig().createNameDetailsViewConfig().toString();
         allowOverride = getPreferencePage().doGetPreferenceStore().getBoolean(IPreferenceKeys.ALLOW_OVERRIDE_NAMEDETAILS);
         pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.NameDetailsView, value);
         pref.setAllowOverride(allowOverride);
@@ -87,6 +88,23 @@ public class DatabasePreferencesWizard extends Wizard {
         pref.setAllowOverride(false);
         service.set(pref);
 
+        String biocaseProviderList = this.getPreferencePage().getBiocaseProviderList().createAllProviderString();
+        if (biocaseProviderList == null){
+            getPreferencePage().doGetPreferenceStore().setValue(IPreferenceKeys.BIOCASE_PROVIDER_LIST,"");
+        }else{
+            getPreferencePage().doGetPreferenceStore().setValue(IPreferenceKeys.BIOCASE_PROVIDER_LIST, biocaseProviderList);
+
+        }
+        pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.BioCaseProvider, String.valueOf(biocaseProviderList));
+        pref.setAllowOverride(false);
+        service.set(pref);
+//        getPreferencePage().createAbcdImportConfig();
+//        value = getPreferencePage().getAbcdImportConfig().toString();
+//        allowOverride = getPreferencePage().doGetPreferenceStore().getBoolean(IPreferenceKeys.ALLOW_OVERRIDE_ABCD_IMPORT_CONFIG);
+//        pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.AbcdImportConfig, value);
+//        pref.setAllowOverride(allowOverride);
+//        service.set(pref);
+
         return true;
     }
 
@@ -95,8 +113,14 @@ public class DatabasePreferencesWizard extends Wizard {
     @Override
     public void addPages() {
         addPage(preferencePage);
+
     }
 
+    @Override
+    public IWizardPage getNextPage(IWizardPage currentPage) {
+
+       return null;
+    }
 
 
 }
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/ImportPreferencesWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/ImportPreferencesWizard.java
new file mode 100755 (executable)
index 0000000..8d5c61f
--- /dev/null
@@ -0,0 +1,65 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.databaseAdmin.wizard;
+
+import org.eclipse.jface.wizard.Wizard;
+
+import eu.etaxonomy.cdm.api.application.ICdmRepository;
+import eu.etaxonomy.cdm.api.service.IPreferenceService;
+import eu.etaxonomy.cdm.model.metadata.CdmPreference;
+import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
+import eu.etaxonomy.taxeditor.io.wizard.AbcdImportConfiguratorWizardPage;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+/**
+ * @author k.luther
+ * @date 19.04.2017
+ *
+ */
+public class ImportPreferencesWizard extends Wizard {
+
+    public AbcdImportConfiguratorWizardPage configPage;
+
+    public ImportPreferencesWizard() {
+        setWindowTitle("Abcd Import Configuration Wizard");
+
+        configPage = AbcdImportConfiguratorWizardPage.createPreferencePage(PreferencesUtil.getAbcdImportConfigurationPreference(false));
+
+    }
+    @Override
+    public void addPages() {
+        addPage(configPage);
+    }
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public boolean performFinish() {
+        String configString = "";
+        this.configPage.saveConfigToPrefernceStore();
+        configString = this.configPage.createConfigString();
+
+        CdmPreference pref = CdmPreference.NewDatabaseInstance( PreferencePredicate.AbcdImportConfig, configString);
+        pref.setAllowOverride(true);
+
+        ICdmRepository controller = CdmStore.getCurrentApplicationConfiguration();
+        if (controller == null){
+            return false;
+        }
+        IPreferenceService service = controller.getPreferenceService();
+        service.set(pref);
+
+
+       return true;
+    }
+
+
+
+}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/ListComponent.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/ListComponent.java
new file mode 100755 (executable)
index 0000000..5ba51a1
--- /dev/null
@@ -0,0 +1,225 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.databaseAdmin.wizard;
+
+
+import java.awt.Toolkit;
+import java.util.ArrayList;
+
+import javax.swing.event.DocumentEvent;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.List;
+import org.eclipse.swt.widgets.Text;
+
+import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
+
+
+/**
+ * @author k.luther
+ * @date 20.04.2017
+ *
+ */
+public class ListComponent
+                      {
+    private List list;
+
+    private static final String addString = "Add";
+    private static final String removeString = "Remove";
+    private Button removeButton;
+    private Text providerURI;
+
+    public ListComponent(Composite parent, int style) {
+        list = new List(parent, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL);
+
+        java.util.List<String> providerList = new ArrayList<String>();
+        String allProviderString = PreferencesUtil.getPreferenceStore().getString(IPreferenceKeys.BIOCASE_PROVIDER_LIST);
+        //the string is structured like this: http://ww3.bgbm.org/biocase/pywrapper.cgi?dsa=DNA_Bank;http:...;
+        String[] providerArray = allProviderString.split(";");
+
+        for (String providerString : providerArray){
+            list.add(providerString);
+        }
+
+        list.setSelection(0);
+        GridData dataList = new GridData();
+        dataList.horizontalAlignment = GridData.FILL;
+        dataList.horizontalSpan = 2;
+        dataList.verticalSpan= 4;
+
+        list.setLayoutData(dataList);
+
+
+        providerURI = new Text(parent, SWT.BORDER | SWT.SINGLE | SWT.FULL_SELECTION);
+        GridData dataProviderUri = new GridData();
+        dataProviderUri.horizontalAlignment = GridData.FILL;
+        dataProviderUri.horizontalSpan = 2;
+        providerURI.setLayoutData(dataProviderUri);
+
+        Button addButton = new Button(parent, SWT.NULL);
+        AddListener addListener = new AddListener(addButton);
+        addButton.setText(addString);
+        addButton.addMouseListener(addListener);
+
+        removeButton = new Button(parent, SWT.NULL);
+        removeButton.setText(removeString);
+        removeButton.addMouseListener(new RemoveListener());
+    }
+
+    class RemoveListener implements MouseListener {
+        @Override
+        public void mouseUp(MouseEvent e)  {
+            //This method can be called only if
+            //there's a valid selection
+            //so go ahead and remove whatever's selected.
+            int index = list.getSelectionIndex();
+            list.remove(index);
+
+            int size = list.getItemCount();
+
+            if (size == 0) { //Nothing's left, disable removing.
+                removeButton.setEnabled(false);
+
+            } else { //Select an index.
+                if (index == size) {
+                    //removed item in last position
+                    index--;
+                }
+
+                list.setSelection(index-1);
+
+
+            }
+        }
+        /**
+         * {@inheritDoc}
+         */
+        @Override
+        public void mouseDoubleClick(MouseEvent e) {
+            // TODO Auto-generated method stub
+
+        }
+
+
+        /**
+         * {@inheritDoc}
+         */
+        @Override
+        public void mouseDown(MouseEvent e) {
+            // TODO Auto-generated method stub
+
+        }
+    }
+
+    //This listener is shared by the text field and the add button.
+    class AddListener implements MouseListener {
+        private boolean alreadyEnabled = false;
+        private Button button;
+
+        public AddListener(Button button) {
+            this.button = button;
+        }
+
+
+        protected boolean alreadyInList(String name) {
+            return list.getData(name) != null;
+        }
+
+
+        private void enableButton() {
+            if (!alreadyEnabled) {
+                button.setEnabled(true);
+            }
+        }
+
+        private boolean handleEmptyTextField(DocumentEvent e) {
+            if (e.getDocument().getLength() <= 0) {
+                button.setEnabled(false);
+                alreadyEnabled = false;
+                return true;
+            }
+            return false;
+        }
+
+
+
+        /**
+         * {@inheritDoc}
+         */
+        @Override
+        public void mouseDoubleClick(MouseEvent e) {
+            // TODO Auto-generated method stub
+
+        }
+
+        /**
+         * {@inheritDoc}
+         */
+        @Override
+        public void mouseDown(MouseEvent e) {
+            // TODO Auto-generated method stub
+
+        }
+
+        /**
+         * {@inheritDoc}
+         */
+        @Override
+        public void mouseUp(MouseEvent e) {
+            String name = providerURI.getText();
+
+            //User didn't type in a unique name...
+            if (name.equals("") || alreadyInList(name)) {
+                Toolkit.getDefaultToolkit().beep();
+                providerURI.selectAll();
+                return;
+            }
+
+            int index = list.getSelectionIndex(); //get selected index
+            if (index == -1) { //no selection, so insert at beginning
+                index = 0;
+            } else {           //add after the selected item
+                index++;
+            }
+
+            list.add(providerURI.getText(), index);
+
+            //Select the new item
+            list.setSelection(index);
+            list.redraw();
+
+        }
+    }
+
+    protected String createAllProviderString(){
+        String allProviderString = null;
+        boolean first = true;
+        for (String item: list.getItems()){
+            if (first || allProviderString == null || allProviderString == ""){
+                allProviderString = item.trim();
+                first = false;
+            }else{
+                allProviderString +=";"+ item.trim();
+            }
+        }
+
+        return allProviderString;
+
+    }
+
+
+
+}
+
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/NameDetailsViewComposite.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/databaseAdmin/wizard/NameDetailsViewComposite.java
new file mode 100755 (executable)
index 0000000..b9d06fd
--- /dev/null
@@ -0,0 +1,320 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.databaseAdmin.wizard;
+
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+
+import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
+import eu.etaxonomy.taxeditor.preference.NameDetailsConfigurator;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
+
+/**
+ * @author k.luther
+ * @date 22.02.2017
+ *
+ */
+public class NameDetailsViewComposite extends Composite {
+
+    NameDetailsConfigurator config;
+    boolean isSimpleDetailsViewActivated;
+    boolean isShowTaxon;
+    boolean isShowLSID;
+    boolean isShowNomenclaturalCode;
+    boolean isShowNameCache;
+    boolean isShowAppendedPhrase;
+    boolean isShowRank;
+    boolean isShowEpithets;
+    boolean isShowAuthorshipCache;
+    boolean isShowAuthorship;
+    boolean isShowNomenclaturalRef;
+    boolean isShowNomenclaturalStatus;
+    boolean isShowProtologue;
+    boolean isShowTypeDesignation;
+    boolean isShowNameRelationship;
+    Composite child;
+
+    public NameDetailsViewComposite(Composite parent, int style, NameDetailsConfigurator config){
+
+        super(parent, style);
+//        TabItem tbtmNameDetailsConfiguration = new TabItem(tabFolder, SWT.NONE);
+//        Composite c2 = new Composite(tabFolder, SWT.BORDER);
+//        c2.setLayout(new GridLayout(1, true));
+//        tbtmNameDetailsConfiguration.setControl(c2);
+       // composite.setLayout(new GridLayout(1, true));
+       this.config = config;
+
+      // Composite composite = new Composite(parent, SWT.NULL);
+       this.setLayout(new GridLayout());
+
+       isSimpleDetailsViewActivated= PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_SECTION);
+       final Button activateCheckButton = new Button(this, SWT.CHECK);
+       activateCheckButton.setText("Show only a simple name details view");
+       activateCheckButton.setSelection(isSimpleDetailsViewActivated);
+       activateCheckButton.addSelectionListener(new SelectionAdapter(){
+       @Override
+       public void widgetSelected(SelectionEvent e) {
+           isSimpleDetailsViewActivated = activateCheckButton.getSelection();
+          //
+           if(isSimpleDetailsViewActivated){
+               child.setVisible(true);
+               child.setEnabled(true);
+           }else{
+               child.setVisible(false);
+               child.setEnabled(false);
+           }
+        }
+        });
+
+       child = new Composite(this, SWT.NULL);
+       child.setLayout(new GridLayout());
+       child.setVisible(isSimpleDetailsViewActivated);
+
+       final Button showTaxon = new Button(child, SWT.CHECK);
+       isShowTaxon = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_TAXON);
+       showTaxon.setText("Show taxon of the name");
+       showTaxon.setSelection(isShowTaxon);
+       showTaxon.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+               isShowTaxon = showTaxon.getSelection();
+
+             }
+        });
+
+       final Button showLsid = new Button(child, SWT.CHECK);
+       isShowLSID = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_LSID);
+       showLsid.setText("Show Lsid of the name");
+       showLsid.setSelection(isShowLSID);
+       showLsid.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowLSID = showLsid.getSelection();
+
+             }
+        });
+
+       final Button showNomenclaturalCode = new Button(child, SWT.CHECK);
+       isShowNomenclaturalCode = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_CODE);
+       showNomenclaturalCode.setText("Show the nomenclatural code");
+       showNomenclaturalCode.setSelection(isShowNomenclaturalCode);
+       showNomenclaturalCode.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowNomenclaturalCode = showNomenclaturalCode.getSelection();
+
+             }
+        });
+
+       final Button showNameCache = new Button(child, SWT.CHECK);
+       isShowNameCache= PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAMECACHE);
+       showNameCache.setText("Show nameCache of the name (only the scientific name without the author and year)");
+       showNameCache.setSelection(isShowNomenclaturalCode);
+       showNameCache.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowNameCache = showNameCache.getSelection();
+
+             }
+        });
+       final Button showAppendedPhrase = new Button(child, SWT.CHECK);
+       isShowAppendedPhrase= PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_APPENDED_PHRASE);
+       showAppendedPhrase.setText("Show appended phrase");
+       showAppendedPhrase.setSelection(isShowAppendedPhrase);
+       showAppendedPhrase.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowAppendedPhrase = showAppendedPhrase.getSelection();
+
+             }
+        });
+
+       final Button showRank = new Button(child, SWT.CHECK);
+       isShowRank = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_RANK);
+       showRank.setText("Show rank of the name");
+       showRank.setSelection(isShowRank);
+       showRank.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowRank = showRank.getSelection();
+
+             }
+        });
+       final Button showEpithets = new Button(child, SWT.CHECK);
+       isShowEpithets = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_ATOMISED_EPITHETS);
+       showEpithets.setText("Show atomised epithets");
+       showEpithets.setSelection(isShowEpithets);
+       showEpithets.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowEpithets = showEpithets.getSelection();
+
+             }
+        });
+       final Button showAuthorshipCache = new Button(child, SWT.CHECK);
+       isShowAuthorshipCache= PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP_CACHE);
+       showAuthorshipCache.setText("Show authorship cache");
+       showAuthorshipCache.setSelection(isShowAuthorshipCache);
+       showAuthorshipCache.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowAuthorshipCache = showAuthorshipCache.getSelection();
+
+             }
+        });
+
+       final Button showAuthorship = new Button(child, SWT.CHECK);
+       isShowAuthorship = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP);
+       showAuthorship.setText("Show authorship section");
+       showAuthorship.setSelection(isShowAuthorship);
+       showAuthorship.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowAuthorship = showAuthorship.getSelection();
+
+             }
+        });
+
+       final Button showNomenclaturalRef = new Button(child, SWT.CHECK);
+       isShowNomenclaturalRef = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_REFERENCE);
+       showNomenclaturalRef.setText("Show nomenclatural reference section");
+       showNomenclaturalRef.setSelection(isShowNomenclaturalRef);
+       showNomenclaturalRef.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowNomenclaturalRef = showNomenclaturalRef.getSelection();
+
+             }
+        });
+
+       final Button showNomenclaturalStatus = new Button(child, SWT.CHECK);
+       isShowNomenclaturalStatus = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_STATUS);
+       showNomenclaturalStatus.setText("Show nomenclatural status section");
+       showNomenclaturalStatus.setSelection(isShowNomenclaturalStatus);
+       showNomenclaturalStatus.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowNomenclaturalStatus = showNomenclaturalStatus.getSelection();
+
+             }
+        });
+
+       final Button showProtologue = new Button(child, SWT.CHECK);
+       isShowProtologue  = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_PROTOLOGUE);
+       showProtologue.setText("Show protologue section");
+       showProtologue.setSelection(isShowProtologue);
+       showProtologue.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowProtologue = showProtologue.getSelection();
+
+             }
+        });
+
+       final Button showTypeDesignation = new Button(child, SWT.CHECK);
+       isShowTypeDesignation = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_TYPE_DESIGNATION);
+       showTypeDesignation.setText("Show name type designation section");
+       showTypeDesignation.setSelection(isShowTypeDesignation);
+       showTypeDesignation.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowTypeDesignation = showTypeDesignation.getSelection();
+
+             }
+        });
+
+
+       final Button showNameRelationship = new Button(child, SWT.CHECK);
+       isShowNameRelationship = PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAME_RELATIONSHIP);
+       showNameRelationship.setText("Show name relationship section");
+       showNameRelationship.setSelection(isShowNameRelationship);
+       showNameRelationship.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                isShowNameRelationship = showNameRelationship.getSelection();
+
+             }
+        });
+
+       if(isSimpleDetailsViewActivated){
+           child.setEnabled(true);
+       }else{
+           child.setEnabled(false);
+       }
+
+    }
+
+    /**
+    *
+    */
+   protected NameDetailsConfigurator createNameDetailsViewConfig() {
+      saveConfigToPrefernceStore();
+
+      config.setSimpleDetailsViewActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_SECTION));
+      config.setAppendedPhraseActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_APPENDED_PHRASE));
+      config.setAtomisedEpithetsActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_ATOMISED_EPITHETS));
+      config.setAuthorshipSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP));
+      config.setLSIDActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_LSID));
+      config.setNameCacheActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_CACHE));
+      config.setNameRelationsSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAME_RELATIONSHIP));
+      config.setNomenclaturalCodeActived(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_CODE));
+      config.setNomenclaturalStatusSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_STATUS));
+      config.setNomenclaturalReferenceSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_REFERENCE));
+      config.setProtologueActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_PROTOLOGUE));
+      config.setRankActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_RANK));
+      config.setSimpleDetailsViewActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_SECTION));
+      config.setTaxonSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_TAXON));
+      config.setTypeDesignationSectionActivated(doGetPreferenceStore().getBoolean(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_TYPE_DESIGNATION));
+      return config;
+   }
+
+    /**
+     *
+     */
+    private void saveConfigToPrefernceStore() {
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_SECTION,
+                isSimpleDetailsViewActivated);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_SIMPLE_NAME_DETAILS_TAXON, isShowTaxon);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_LSID, isShowLSID);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_CODE,
+                isShowNomenclaturalCode);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAMECACHE,
+                isShowNameCache);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_APPENDED_PHRASE,
+                isShowAppendedPhrase);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_RANK, isShowRank);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_ATOMISED_EPITHETS,
+                isShowEpithets);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP_CACHE,
+                isShowAuthorshipCache);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_AUTHORSHIP,
+                isShowAuthorship);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_REFERENCE,
+                isShowNomenclaturalRef);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NOMENCLATURAL_STATUS,
+                isShowNomenclaturalStatus);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_PROTOLOGUE,
+                isShowProtologue);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_TYPE_DESIGNATION,
+                isShowTypeDesignation);
+        PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.SHOW_NAME_DETAILS_SECTION_NAME_RELATIONSHIP,
+                isShowNameRelationship);
+
+    }
+
+    protected IPreferenceStore doGetPreferenceStore() {
+        return PreferencesUtil.getPreferenceStore();
+    }
+
+}
index da41ff5e26a4b3052bca30781027b0c899eeaf5a..5acacce6c03100d083026b86898febc4f53254a7 100644 (file)
@@ -30,6 +30,7 @@ import org.eclipse.ui.menus.CommandContributionItemParameter;
 
 import eu.etaxonomy.cdm.model.common.TermType;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
+import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
  * Menu used in the store plugin xml to dynamically generate menu (sub-menu) contribution items
@@ -46,39 +47,41 @@ public class DefinedTermMenu extends CompoundContributionItem {
     @Override
     protected IContributionItem[] getContributionItems() {
         Collection<IContributionItem> items = new ArrayList<IContributionItem>();
-           MenuManager dtMenuManager =
-                   new MenuManager("Term Editor","eu.etaxonomy.taxeditor.store.definedTermEditorMenu");
-
-           dtMenuManager.setVisible(true);
-
-           items.add(dtMenuManager);
-           //add Feature and NamedArea to top level
-           dtMenuManager.add(addChildTermsToMenuManager(TermType.Feature));
-           dtMenuManager.add(addChildTermsToMenuManager(TermType.NamedArea));
-           dtMenuManager.add(new Separator());
-
-           MenuManager otherMenuManager =
-                new MenuManager("Others","eu.etaxonomy.taxeditor.store.term.other.menu");
-           otherMenuManager.setVisible(true);
-           dtMenuManager.add(otherMenuManager);
-
-           List<TermType> ttList = new ArrayList<TermType>(EnumSet.allOf(TermType.class));
-           Collections.sort(ttList,new SortByTermTypeMessage());
-           for (TermType tt : ttList)
-           {
-               //skip Feature and NamedArea as they have already been added to top level
-               if(tt.equals(TermType.Feature) || tt.equals(TermType.NamedArea)){
-                   continue;
-               }
-               // if term type has a parent, do not add it
-               // it will be added in the recursive call
-               if(tt.getKindOf() == null) {
-                   IContributionItem ici = addChildTermsToMenuManager(tt);
-                   if(ici != null) {
-                       otherMenuManager.add(ici);
-                   }
-               }
-           }
+        if(CdmStore.isActive()){
+            MenuManager dtMenuManager =
+                    new MenuManager("Term Editor","eu.etaxonomy.taxeditor.store.definedTermEditorMenu");
+
+            dtMenuManager.setVisible(true);
+
+            items.add(dtMenuManager);
+            //add Feature and NamedArea to top level
+            dtMenuManager.add(addChildTermsToMenuManager(TermType.Feature));
+            dtMenuManager.add(addChildTermsToMenuManager(TermType.NamedArea));
+            dtMenuManager.add(new Separator());
+
+            MenuManager otherMenuManager =
+                    new MenuManager("Others","eu.etaxonomy.taxeditor.store.term.other.menu");
+            otherMenuManager.setVisible(true);
+            dtMenuManager.add(otherMenuManager);
+
+            List<TermType> ttList = new ArrayList<TermType>(EnumSet.allOf(TermType.class));
+            Collections.sort(ttList,new SortByTermTypeMessage());
+            for (TermType tt : ttList)
+            {
+                //skip Feature and NamedArea as they have already been added to top level
+                if(tt.equals(TermType.Feature) || tt.equals(TermType.NamedArea)){
+                    continue;
+                }
+                // if term type has a parent, do not add it
+                // it will be added in the recursive call
+                if(tt.getKindOf() == null) {
+                    IContributionItem ici = addChildTermsToMenuManager(tt);
+                    if(ici != null) {
+                        otherMenuManager.add(ici);
+                    }
+                }
+            }
+        }
            return items.toArray(new IContributionItem[]{});
        }
 
index cdc277891c98c5a5a4e8542919ac01334a3c424b..9eb00c80ae694ac74c987740f5abbda9dc46c98c 100644 (file)
@@ -8,27 +8,23 @@
 */
 package eu.etaxonomy.taxeditor.handler;
 
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.e4.core.di.annotations.Execute;
 import org.eclipse.jface.wizard.WizardDialog;
 
 import eu.etaxonomy.taxeditor.databaseAdmin.wizard.DatabasePreferencesWizard;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
 
 /**
  * @author k.luther
  * @date 18.11.2016
  *
  */
-public class OpenDatabasePreferencesWizardHandler  extends AbstractHandler{
+public class OpenDatabasePreferencesWizardHandler {
 
-    String commandID = "eu.etaxonomy.taxeditor.store.open.OpenDatabasePreferencesWizardHandler";
-
-    @Override
-    public Object execute(ExecutionEvent event) throws ExecutionException {
+    @Execute
+    public Object execute(){
         DatabasePreferencesWizard databasePreferencesWizard = new DatabasePreferencesWizard();
-        WizardDialog dialog = new WizardDialog(StoreUtil.getShell(),
+        WizardDialog dialog = new WizardDialog(AbstractUtility.getShell(),
                 databasePreferencesWizard);
 
         dialog.open();
index 697debaf46db5aea0117f2910131af38cef5225f..a1deba1d378c9acb5f270cf8958cc40d2c7fc141 100644 (file)
@@ -8,13 +8,11 @@
 */
 package eu.etaxonomy.taxeditor.handler;
 
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.e4.core.di.annotations.Execute;
 import org.eclipse.jface.wizard.WizardDialog;
 
 import eu.etaxonomy.taxeditor.databaseAdmin.wizard.DatabaseRepairWizard;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
 
 
 
@@ -23,15 +21,15 @@ import eu.etaxonomy.taxeditor.store.StoreUtil;
  * @date 06.12.2016
  *
  */
-public class OpenDatabaseRepairWizardHandler extends AbstractHandler {
+public class OpenDatabaseRepairWizardHandler{
 
     /**
      * {@inheritDoc}
      */
-    @Override
-    public Object execute(ExecutionEvent event) throws ExecutionException {
+    @Execute
+    public Object execute(){
         DatabaseRepairWizard databaseRepairWizard = new DatabaseRepairWizard();
-        WizardDialog dialog = new WizardDialog(StoreUtil.getShell(),
+        WizardDialog dialog = new WizardDialog(AbstractUtility.getShell(),
                 databaseRepairWizard);
 
         dialog.open();
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenImportPreferenceHandler.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenImportPreferenceHandler.java
new file mode 100755 (executable)
index 0000000..afdeb6b
--- /dev/null
@@ -0,0 +1,34 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.handler;
+
+import org.eclipse.e4.core.di.annotations.Execute;
+import org.eclipse.jface.wizard.WizardDialog;
+
+import eu.etaxonomy.taxeditor.databaseAdmin.wizard.ImportPreferencesWizard;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
+
+/**
+ * @author k.luther
+ * @date 19.04.2017
+ *
+ */
+public class OpenImportPreferenceHandler {
+    @Execute
+    public Object execute(){
+        ImportPreferencesWizard importPreferencesWizard = new ImportPreferencesWizard();
+        WizardDialog dialog = new WizardDialog(AbstractUtility.getShell(),
+                importPreferencesWizard);
+
+        dialog.open();
+
+        return null;
+    }
+
+}
index 4be9f81b52323b69000586fdadfd1c44bf82bcf0..506d96bc9fb1e8abb3038190b7526a5f042f0138 100644 (file)
@@ -29,7 +29,7 @@ public abstract class AbstractIOManager<CONFIGURATOR extends IIoConfigurator> {
        protected ICdmRepository applicationConfiguration;
 
        public static enum TYPE {
-               Jaxb, Tcs, Excel_Taxa, Endnote, Sdd, Abcd, SpecimenCdmExcel, Excel_Name, SpecimenSearch, Gbif
+               Jaxb, Tcs, Excel_Taxa, Endnote, Sdd, Abcd, SpecimenCdmExcel, Excel_Name, SpecimenSearch, Gbif, Excel_Distribution, Ris
        }
 
        /**
index 0aa3ed1730f0882a1955e57e144788b48a329bac..be72cfc8f6c46902bc4ac856768f6307be055c25 100644 (file)
@@ -12,7 +12,10 @@ package eu.etaxonomy.taxeditor.io;
 import java.io.File;
 import java.io.FileOutputStream;
 import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
+import org.apache.log4j.Logger;
 import org.eclipse.core.runtime.Assert;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
@@ -20,21 +23,29 @@ import org.eclipse.core.runtime.Status;
 import org.eclipse.core.runtime.jobs.Job;
 import org.eclipse.swt.widgets.Display;
 import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PlatformUI;
 
 import eu.etaxonomy.cdm.api.application.CdmApplicationState;
 import eu.etaxonomy.cdm.api.application.ICdmRepository;
 import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
 import eu.etaxonomy.cdm.io.common.CdmDefaultExport;
+import eu.etaxonomy.cdm.io.common.ExportDataWrapper;
 import eu.etaxonomy.cdm.io.common.ExportResult;
+import eu.etaxonomy.cdm.io.common.ExportResultType;
 import eu.etaxonomy.cdm.io.common.IExportConfigurator;
 import eu.etaxonomy.cdm.io.common.IIoConfigurator;
+import eu.etaxonomy.cdm.io.common.IoResultBase;
+import eu.etaxonomy.cdm.io.common.IoResultBase.IoInfo;
 import eu.etaxonomy.cdm.io.jaxb.JaxbExportConfigurator;
+import eu.etaxonomy.cdm.io.outputmodel.OutputModelConfigurator;
 import eu.etaxonomy.cdm.io.sdd.out.SDDExportConfigurator;
 import eu.etaxonomy.cdm.io.service.IIOService;
 import eu.etaxonomy.taxeditor.model.CdmProgressMonitorAdapter;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
+import eu.etaxonomy.taxeditor.store.CdmStore;
 import eu.etaxonomy.taxeditor.store.StoreUtil;
 import eu.etaxonomy.taxeditor.store.internal.TaxeditorStorePlugin;
+import eu.etaxonomy.taxeditor.ui.dialog.ReportTextDialog;
 
 /**
  * <p>
@@ -47,6 +58,8 @@ import eu.etaxonomy.taxeditor.store.internal.TaxeditorStorePlugin;
  */
 public class ExportManager extends AbstractIOManager<IExportConfigurator> {
 
+    private static final Logger logger = Logger.getLogger(ExportManager.class);
+
        /**
         *
         * @param applicationConfiguration
@@ -167,9 +180,9 @@ public class ExportManager extends AbstractIOManager<IExportConfigurator> {
        public Job createIOServiceJob(final IExportConfigurator configurator, final File exportFile) {
            Assert.isNotNull(configurator, "Configuration may not be null");
 
-           final Display display = Display.getCurrent();
+          // final Display display = Display.getCurrent();
 
-           Job job = new Job("Export: " + configurator.getClass().getSimpleName()) {
+           Job job = new Job("Export: " + configurator.getClass().getSimpleName()) { //$NON-NLS-1$
                @Override
                protected IStatus run(IProgressMonitor monitor) {
                    monitor.beginTask("Exporting database. This will take some time.", IProgressMonitor.UNKNOWN);
@@ -177,16 +190,36 @@ public class ExportManager extends AbstractIOManager<IExportConfigurator> {
                        IIOService ioService = CdmApplicationState.getIOService();
 
                        ExportResult result = ioService.export(configurator);
-                       List<byte[]> dataList = result.getExportData();
-                       byte[] exportData = dataList.get(0);
-
-                       FileOutputStream stream = new FileOutputStream(exportFile);
-                       try {
-                           stream.write(exportData);
-                       } finally {
-                           stream.close();
+                       ExportDataWrapper data = result.getExportData();
+                       try{
+                       if (result.getExportData().getType().equals(ExportResultType.BYTE_ARRAY)){
+                           byte[] exportData = (byte[])data.getExportData();
+                               if(exportData != null){
+                                   FileOutputStream stream = new FileOutputStream(exportFile);
+                                stream.write(exportData);
+                                stream.close();
+                            }
+//                     } else if (result.getExportData().getType().equals(ExportResultType.MAP_BYTE_ARRAY)){
+//                         Map<String, byte[]> resultMap = (Map<String, byte[]>)data.getExportData();
+//                         Set<String> keySet = resultMap.keySet();
+//                         for (String key: keySet){
+//                             byte[] fileData = resultMap.get(key);
+//                             File file = new File(urlString)
+//                             FileOutputStream stream = new FileOutputStream(key);
+//                                stream.write(fileData);
+//                                stream.close();
+//                         }
+
+                       }else{
+                           logger.error("This kind of result data is not supported yet." + result.getExportData().getType().toString());
+                       }
+                       } catch(Exception e){
+                           logger.error(e.getStackTrace());
                        }
 
+
+
+
                    } catch (Exception e) {
                        MessagingUtils.errorDialog("Error exporting data",
                                this,
@@ -241,6 +274,106 @@ public class ExportManager extends AbstractIOManager<IExportConfigurator> {
                return (SDDExportConfigurator) getConfigurator(TYPE.Sdd);
        }
 
+    /**
+     * @param configurator
+     * @param urlString
+     * @return
+     */
+    public Job createIOServiceJob(OutputModelConfigurator configurator, String urlString) {
+        Assert.isNotNull(configurator, "Configuration may not be null");
+
+        // final Display display = Display.getCurrent();
+
+         Job job = new Job("Export: " + configurator.getClass().getSimpleName()) { //$NON-NLS-1$
+             @Override
+             protected IStatus run(IProgressMonitor monitor) {
+                 monitor.beginTask("Exporting database. This will take some time.", IProgressMonitor.UNKNOWN);
+                 try {
+                     IIOService ioService = CdmApplicationState.getIOService();
+
+                     ExportResult result = ioService.export(configurator);
+                     ExportDataWrapper data = result.getExportData();
+                     try{
+                         if (result.getExportData().getType().equals(ExportResultType.BYTE_ARRAY)){
+                             byte[] exportData = (byte[])data.getExportData();
+                             if(exportData != null){
+                                 File file = new File(urlString);
+                                 FileOutputStream stream = new FileOutputStream(file);
+                                 stream.write(exportData);
+                                 stream.close();
+                             }
+                         } else if (result.getExportData().getType().equals(ExportResultType.MAP_BYTE_ARRAY)){
+                             Map<String, byte[]> resultMap = (Map<String, byte[]>)data.getExportData();
+                             Set<String> keySet = resultMap.keySet();
+                             for (String key: keySet){
+                                 byte[] fileData = resultMap.get(key);
+                                 String fileEnding ="";
+                                 if (configurator instanceof OutputModelConfigurator){
+                                     fileEnding  = ".csv";
+                                 }
+                                 File file = new File(urlString+File.separator + key + fileEnding);
+                                 FileOutputStream stream = new FileOutputStream(file);
+                                 stream.write(fileData);
+                                 stream.close();
+                             }
+
+                         }else{
+                             logger.error("This kind of result data is not supported yet." + result.getExportData().getType().toString());
+                         }
+                     } catch(Exception e){
+                         logger.error(e.getStackTrace());
+                     }
+                     final StringBuilder reportText = new StringBuilder();
+                     if(result!=null){
+                         List<IoInfo> reports = result.getErrors();
+                         reportText.append("Errors:\\r");
+                         for (IoInfo bs : reports) {
+                             reportText.append(bs.getMessage() + " - " +bs.getException().getStackTrace());
+                         }
+                         List<IoResultBase.IoInfo> warnings = result.getWarnings();
+                         reportText.append("Warnings:\\r");
+                         for (IoResultBase.IoInfo bs : warnings) {
+                             reportText.append(bs);
+                         }
+                         List<IoInfo> exceptions = result.getExceptions();
+                         reportText.append("Exceptions:\\r");
+                         for (IoInfo bs : exceptions) {
+                             reportText.append(bs.getMessage() + " - " +bs.getException().getStackTrace());
+                         }
+
+
+                     }
+                     final Display display = Display.getDefault();
+                     display.asyncExec(new Runnable() {
+
+                         @Override
+                         public void run() {
+                             // display reports with possibility to save
+                             ReportTextDialog dialog = new ReportTextDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
+                             dialog.setTitle(configurator.getClass().getSimpleName()+" Report");
+                             dialog.setReportText(reportText.toString());
+                             dialog.open();
+                             CdmStore.getContextManager().notifyContextRefresh();
+                         }
+                     });
+
+
+
+                 } catch (Exception e) {
+                     MessagingUtils.errorDialog("Error exporting data",
+                             this,
+                             e.getMessage(),
+                             TaxeditorStorePlugin.PLUGIN_ID,
+                             e,
+                             true);
+                 }
+
+                 return Status.OK_STATUS;
+             }
+         };
+         return job;
+    }
+
 
 
 }
index 76e956eb3930b0d861a0c380f4104dec95f6bc08..0a8856e9de522fe88d90542136f86a733d8434d0 100644 (file)
@@ -18,6 +18,7 @@ import java.util.List;
 import java.util.UUID;
 
 import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang.StringUtils;
 import org.eclipse.core.runtime.Assert;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
@@ -36,6 +37,7 @@ import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE;
 import eu.etaxonomy.cdm.io.common.ImportConfiguratorBase;
 import eu.etaxonomy.cdm.io.common.ImportResult;
 import eu.etaxonomy.cdm.io.common.SortIndexUpdaterConfigurator;
+import eu.etaxonomy.cdm.io.distribution.excelupdate.ExcelDistributionUpdateConfigurator;
 import eu.etaxonomy.cdm.io.dwca.in.DwcaImportConfigurator;
 import eu.etaxonomy.cdm.io.excel.taxa.NormalExplicitImportConfigurator;
 import eu.etaxonomy.cdm.io.jaxb.JaxbImportConfigurator;
@@ -43,7 +45,6 @@ import eu.etaxonomy.cdm.io.reference.endnote.in.EndnoteImportConfigurator;
 import eu.etaxonomy.cdm.io.sdd.in.SDDImportConfigurator;
 import eu.etaxonomy.cdm.io.service.IIOService;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator;
-import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportState;
 import eu.etaxonomy.cdm.io.specimen.excel.in.SpecimenCdmExcelImportConfigurator;
 import eu.etaxonomy.cdm.io.specimen.gbif.in.GbifImportConfigurator;
 import eu.etaxonomy.cdm.io.specimen.gbif.in.GbifImportState;
@@ -205,7 +206,7 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
                 monitor.beginTask("Importing data", IProgressMonitor.UNKNOWN);
                 IIOService ioService = CdmApplicationState.getIOService();
 
-                ioService.importData(configurator, data, type);
+                ImportResult result = ioService.importData(configurator, data, type);
 
                 monitor.done();
 
@@ -216,7 +217,7 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
                         CdmStore.getContextManager().notifyContextRefresh();
                     }
                 });
-
+                showResult(configurator.getClass().getSimpleName(), display, result);
                 return Status.OK_STATUS;
             }
         };
@@ -259,6 +260,7 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
         Path path = Paths.get(importFile.toURI());
         try {
             runMoniteredOperation(configurator, Files.readAllBytes(path), type);
+
         } catch (Exception e) {
             MessagingUtils.errorDialog("Error importing input stream",
                     this,
@@ -310,6 +312,9 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
                    return Abcd206ImportConfigurator.NewInstance(null, null);
                case Gbif:
                    return DwcaImportConfigurator.NewInstance(null, null);
+               case Excel_Distribution:
+            return ExcelDistributionUpdateConfigurator.NewInstance(null, null, null);
+
                default:
                        MessagingUtils.notImplementedMessage(this);
                        throw new IllegalArgumentException("Import not supported yet");
@@ -435,7 +440,7 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
 //                             CdmStore.getContextManager().notifyContextRefresh();
 //                         }
 //                     });
-
+                       showResult("Gbif Import", display, result);
                        return Status.OK_STATUS;
                    }
                };
@@ -444,7 +449,7 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
 
        }
 
-       public Job createIOServiceJob(final Abcd206ImportConfigurator<Abcd206ImportState, InputStream> configurator) {
+       public Job createIOServiceJob(final Abcd206ImportConfigurator configurator) {
                 Assert.isNotNull(configurator, "Configuration may not be null");
                final Display display = Display.getDefault();
                Job job = new Job("Import: " + " Dwca") {
@@ -464,7 +469,7 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
                                CdmStore.getContextManager().notifyContextRefresh();
                            }
                        });
-
+                       showResult("Abcd Import", display, result);
                        return Status.OK_STATUS;
                    }
                };
@@ -477,7 +482,7 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
                        final List<Abcd206ImportConfigurator> abcdConfigurators) {
                 Assert.isNotNull(abcdConfigurators, "Configuration may not be null");
                final Display display = Display.getDefault();
-               Job job = new Job("Import: " + " Dwca") {
+               Job job = new Job("Import: " + " Abcd") {
 
                    @Override
                    protected IStatus run(IProgressMonitor monitor) {
@@ -494,6 +499,9 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
                                CdmStore.getContextManager().notifyContextRefresh();
                            }
                        });
+                       showResult("Abcd Import", display, result);
+
+
 
                        return Status.OK_STATUS;
                    }
@@ -505,39 +513,91 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
     public Job createIOServiceJob(final ImportConfiguratorBase configurator) {
         Assert.isNotNull(configurator, "Configuration may not be null");
         final Display display = Display.getDefault();
+
         Job job = new Job("Update: " + configurator.getClass().getSimpleName()) {
 
             @Override
             protected IStatus run(IProgressMonitor monitor) {
                 monitor.beginTask("Updating data", IProgressMonitor.UNKNOWN);
                 IIOService ioService = CdmApplicationState.getIOService();
+                ImportResult importResult = null;
                 if (configurator instanceof SortIndexUpdaterConfigurator){
                     SortIndexUpdaterConfigurator config = (SortIndexUpdaterConfigurator)configurator;
-                    ioService.updateSortIndex(config);
+                    importResult =ioService.updateSortIndex(config);
                 } else if (configurator instanceof CacheUpdaterConfigurator){
                     CacheUpdaterConfigurator config = (CacheUpdaterConfigurator) configurator;
-                    ioService.updateCaches(config);
+                    importResult = ioService.updateCaches(config);
+                } else if (configurator instanceof ExcelDistributionUpdateConfigurator){
+                    ExcelDistributionUpdateConfigurator config = (ExcelDistributionUpdateConfigurator) configurator;
+                    importResult =ioService.updateDistributionData(config);
                 }
 
                 monitor.done();
+//                display.asyncExec(new Runnable() {
+//
+//                    @Override
+//                    public void run() {
+//                        CdmStore.getContextManager().notifyContextRefresh();
+//                    }
+//                });
+                showResult(configurator.getClass().getSimpleName(), display, importResult);
 
-                display.asyncExec(new Runnable() {
-
-                    @Override
-                    public void run() {
-                        CdmStore.getContextManager().notifyContextRefresh();
-                    }
-                });
 
                 return Status.OK_STATUS;
             }
+
+
         };
 
         return job;
 
     }
 
+    /**
+     * @return
+     */
+    public ExcelDistributionUpdateConfigurator ExcelDistributionUpdateConfigurator() {
+        return (ExcelDistributionUpdateConfigurator) getConfigurator(TYPE.Excel_Distribution);
+    }
+
+
+
+    /**
+     * @param configurator
+     * @param display
+     * @param importResult
+     */
+    private void showResult(String importName, final Display display,
+            ImportResult importResult) {
+        StringBuffer reportTextTemp = importResult.createReport();
+        final StringBuffer reportText;
+        if (StringUtils.isBlank(reportTextTemp.toString())){
+            reportTextTemp.append("No update result available");
+            //TODO: this is a workaround because the abcd import writes the report in the report part...
+            if (!importResult.getReports().isEmpty() && importResult.getReports().get(0) != null){
+                reportTextTemp = new StringBuffer();
+                if(importResult!=null){
+                    List<byte[]> reports = importResult.getReports();
+                    for (byte[] bs : reports) {
+                        if (bs != null){ reportTextTemp.append(new String(bs));}
+                    }
+                }
+            }
+        }
+        reportText = reportTextTemp;
+        display.asyncExec(new Runnable() {
 
+            @Override
+            public void run() {
+                // display reports with possibility to save
+                ReportTextDialog dialog = new ReportTextDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell());
+                dialog.setTitle(importName+" Report");
+                dialog.setReportText(reportText.toString());
+                dialog.open();
+                CdmStore.getContextManager().notifyContextRefresh();
+            }
+        });
+    }
 
 
 
index aa93c603a4db5134950acfc41d6ab65fd6ef4738..49edb5b70aacf24ef6204af97e9ec55bc4201b5e 100644 (file)
@@ -9,7 +9,11 @@
 
 package eu.etaxonomy.taxeditor.io.wizard;
 
-import org.eclipse.jface.wizard.WizardPage;
+import java.net.URI;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.SelectionAdapter;
 import org.eclipse.swt.events.SelectionEvent;
@@ -18,40 +22,62 @@ import org.eclipse.swt.widgets.Button;
 import org.eclipse.swt.widgets.Composite;
 
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator;
-import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportState;
+import eu.etaxonomy.taxeditor.databaseAdmin.wizard.AbstractPreferenceWizard;
+import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 
 /**
- * 
+ *
  * @author pplitzner
  *
  */
-public class AbcdImportConfiguratorWizardPage extends WizardPage {
+public class AbcdImportConfiguratorWizardPage extends AbstractPreferenceWizard {
 
        public static final String PAGE_NAME = "AbcdImportConfiguratorWizardPage";
-       
-       private Abcd206ImportConfigurator<Abcd206ImportState, ?> configurator;
 
-       protected AbcdImportConfiguratorWizardPage(String title, String description, Abcd206ImportConfigurator<Abcd206ImportState, ?> configurator) {
+       private Abcd206ImportConfigurator configurator;
+
+       private List<URI> biocaseProvider = new ArrayList<>();
+
+       private boolean isPreferencePage = false;
+
+       protected AbcdImportConfiguratorWizardPage(String title, String description, Abcd206ImportConfigurator configurator) {
+        super(PAGE_NAME);
+        this.configurator = configurator;
+        setTitle(title);
+        setDescription(description);
+    }
+
+       protected AbcdImportConfiguratorWizardPage(String title, String description, Abcd206ImportConfigurator configurator, boolean isPreferencePage) {
                super(PAGE_NAME);
                this.configurator = configurator;
                setTitle(title);
                setDescription(description);
+               this.isPreferencePage = isPreferencePage;
        }
 
-       public static AbcdImportConfiguratorWizardPage createPage(Abcd206ImportConfigurator<Abcd206ImportState, ?> configurator){
+       public static AbcdImportConfiguratorWizardPage createPage(Abcd206ImportConfigurator configurator){
                return new AbcdImportConfiguratorWizardPage("Configure import parameters",
                                "Tooltips will explain parameters in more detail", configurator);
        }
 
+       public static AbcdImportConfiguratorWizardPage createPreferencePage(Abcd206ImportConfigurator configurator){
+        return new AbcdImportConfiguratorWizardPage("Configure import parameters",
+                "Tooltips will explain parameters in more detail", configurator, true);
+    }
+
 
 
        /** {@inheritDoc} */
        @Override
     public void createControl(Composite parent) {
                final Composite composite = new Composite(parent, SWT.NULL);
-
+               //composite = addTab(Messages.DatabasePreferencesPage_Define_Default_NomenclaturalCode);
                GridLayout gridLayout = new GridLayout();
                composite.setLayout(gridLayout);
+//        if (isPreferencePage){
+//            ListComponent list = new ListComponent(composite, composite.getStyle());
+//        }
 
                Button checkBoxMediaSpecimen = new Button(composite, SWT.CHECK);
                checkBoxMediaSpecimen.setSelection(configurator.isAddMediaAsMediaSpecimen());
@@ -76,7 +102,7 @@ public class AbcdImportConfiguratorWizardPage extends WizardPage {
                                configurator.setIgnoreImportOfExistingSpecimen(!configurator.isIgnoreImportOfExistingSpecimen());
                        }
                });
-               
+
                Button checkBoxIgnoreAuthorship = new Button(composite, SWT.CHECK);
                checkBoxIgnoreAuthorship.setSelection(configurator.isIgnoreAuthorship());
                checkBoxIgnoreAuthorship.setText("Ignore Authorship for name matching");
@@ -89,7 +115,7 @@ public class AbcdImportConfiguratorWizardPage extends WizardPage {
                                configurator.setIgnoreAuthorship(!configurator.isIgnoreAuthorship());
                        }
                });
-               
+
                Button checkBoxMapUnitIdToCatalogNumber = new Button(composite, SWT.CHECK);
                checkBoxMapUnitIdToCatalogNumber.setSelection(configurator.isMapUnitIdToCatalogNumber());
                checkBoxMapUnitIdToCatalogNumber.setText("Map UnitID to catalog number");
@@ -102,7 +128,7 @@ public class AbcdImportConfiguratorWizardPage extends WizardPage {
                                configurator.setMapUnitIdToCatalogNumber(!configurator.isMapUnitIdToCatalogNumber());
                        }
                });
-               
+//TODO: only one of the mappings can be checked!
                Button checkBoxMapUnitIdToAccessionNumber = new Button(composite, SWT.CHECK);
                checkBoxMapUnitIdToAccessionNumber.setSelection(configurator.isMapUnitIdToAccessionNumber());
                checkBoxMapUnitIdToAccessionNumber.setText("Map UnitID to accession number");
@@ -115,7 +141,7 @@ public class AbcdImportConfiguratorWizardPage extends WizardPage {
                                configurator.setMapUnitIdToAccessionNumber(!configurator.isMapUnitIdToAccessionNumber());
                        }
                });
-               
+
                Button checkBoxMapUnitIdToBarcode = new Button(composite, SWT.CHECK);
                checkBoxMapUnitIdToBarcode.setSelection(configurator.isMapUnitIdToBarcode());
                checkBoxMapUnitIdToBarcode.setText("Map UnitID to barcode");
@@ -128,7 +154,7 @@ public class AbcdImportConfiguratorWizardPage extends WizardPage {
                                configurator.setMapUnitIdToBarcode(!configurator.isMapUnitIdToBarcode());
                        }
                });
-               
+
                Button checkBoxRemoveCountry = new Button(composite, SWT.CHECK);
                checkBoxRemoveCountry.setSelection(configurator.isRemoveCountryFromLocalityText());
                checkBoxRemoveCountry.setText("Remove country from locality text");
@@ -142,7 +168,7 @@ public class AbcdImportConfiguratorWizardPage extends WizardPage {
                                configurator.setRemoveCountryFromLocalityText(!configurator.isRemoveCountryFromLocalityText());
                        }
                });
-               
+
                Button checkBoxMoveToDefaultClassification = new Button(composite, SWT.CHECK);
                checkBoxMoveToDefaultClassification.setSelection(configurator.isMoveNewTaxaToDefaultClassification());
                checkBoxMoveToDefaultClassification.setText("Create new classification for new taxa");
@@ -152,11 +178,104 @@ public class AbcdImportConfiguratorWizardPage extends WizardPage {
                checkBoxMoveToDefaultClassification.addSelectionListener(new SelectionAdapter() {
                        @Override
                        public void widgetSelected(SelectionEvent e) {
-                               configurator.setRemoveCountryFromLocalityText(!configurator.isRemoveCountryFromLocalityText());
+                               configurator.setMoveNewTaxaToDefaultClassification(!configurator.isMoveNewTaxaToDefaultClassification());
                        }
                });
-               
+
+               Button checkBoxImportSiblings = new Button(composite, SWT.CHECK);
+               checkBoxImportSiblings.setSelection(configurator.isGetSiblings());
+               checkBoxImportSiblings.setText("Import all children of cultures or tissue samples");
+               checkBoxImportSiblings
+        .setToolTipText("for a tissue sample or culture all children will be searched and imported");
+               checkBoxImportSiblings.addSelectionListener(new SelectionAdapter() {
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                configurator.setGetSiblings(!configurator.isGetSiblings());
+            }
+        });
+
+        Button checkBoxAddIndividualsAssociations = new Button(composite, SWT.CHECK);
+        checkBoxAddIndividualsAssociations.setSelection(configurator.isAddIndividualsAssociationsSuchAsSpecimenAndObservations());
+        checkBoxAddIndividualsAssociations.setText("Create an Individual Association for each Specimen");
+        checkBoxAddIndividualsAssociations
+        .setToolTipText("for each specimen associated to a taxon an indiviadual association to this taxon is created");
+        checkBoxAddIndividualsAssociations.addSelectionListener(new SelectionAdapter() {
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                configurator.setAddIndividualsAssociationsSuchAsSpecimenAndObservations(!configurator.isAddIndividualsAssociationsSuchAsSpecimenAndObservations());
+            }
+        });
+
+        Button checkBoxReuseDescriptiveGroups = new Button(composite, SWT.CHECK);
+        checkBoxReuseDescriptiveGroups.setSelection(configurator.isReuseExistingDescriptiveGroups());
+        checkBoxReuseDescriptiveGroups.setText("Reuse existing descriptive group");
+        checkBoxReuseDescriptiveGroups
+        .setToolTipText("reuse one of the existing descriptive groups or create a new one for every import");
+        checkBoxReuseDescriptiveGroups.addSelectionListener(new SelectionAdapter() {
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                configurator.setReuseExistingDescriptiveGroups(!configurator.isReuseExistingDescriptiveGroups());
+            }
+        });
+
+        Button checkBoxReuseExistingTaxa = new Button(composite, SWT.CHECK);
+        checkBoxReuseExistingTaxa.setSelection(configurator.isReuseExistingTaxaWhenPossible());
+        checkBoxReuseExistingTaxa.setText("Reuse existing taxa when possible");
+        checkBoxReuseExistingTaxa
+        .setToolTipText("reuse existing taxa when the name matches the identified name of the specimen");
+        checkBoxReuseExistingTaxa.addSelectionListener(new SelectionAdapter() {
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                configurator.setReuseExistingDescriptiveGroups(!configurator.isReuseExistingDescriptiveGroups());
+            }
+        });
+
+
                setControl(composite);
        }
-       
+
+        public void saveConfigToPrefernceStore() {
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ADD_INDIVIDUALS_ASSOCIATIONS_SUCH_AS_SPECIMEN_AND_OBSERVATIONS,
+                       configurator.isAddIndividualsAssociationsSuchAsSpecimenAndObservations());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ADD_MEDIA_AS_MEDIASPECIMEN,
+                    configurator.isAddMediaAsMediaSpecimen());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ALLOW_REUSE_OTHER_CLASSIFICATIONS,
+                    configurator.isAllowReuseOtherClassifications());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DEDUPLICATE_CLASSIFICATIONS,
+                    configurator.isDeduplicateClassifications());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DEDUPLICATE_REFERENCES,
+                    configurator.isDeduplicateReferences());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DO_SIBLINGS,
+                    configurator.isGetSiblings());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_IGNORE_AUTHORSHIP,
+                    configurator.isIgnoreAuthorship());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_IGNORE_IMPORT_OF_EXISTING_SPECIMEN,
+                    configurator.isIgnoreImportOfExistingSpecimen());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TO_ACCESSION_NUMBER,
+                    configurator.isMapUnitIdToAccessionNumber());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TO_BARCODE,
+                    configurator.isMapUnitIdToBarcode());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TOCATALOG_NUMBER,
+                    configurator.isMapUnitIdToCatalogNumber());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MOVE_NEW_TAXA_TO_DEFAULT_CLASSIFICATION,
+                    configurator.isMoveNewTaxaToDefaultClassification());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_OVERWRITE_EXISTING_SPECIMEN,
+                    configurator.isOverwriteExistingSpecimens());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_DESCRIPTIVE_GROUPS,
+                    configurator.isReuseExistingDescriptiveGroups());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_META_DATA,
+                    configurator.isReuseExistingMetaData());
+               PreferencesUtil.getPreferenceStore().setValue(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_TAXA_WHEN_POSSIBLE,
+                    configurator.isReuseExistingTaxaWhenPossible());
+
+           }
+
+        public String createConfigString(){
+           return configurator.toString();
+
+        }
+
+        protected IPreferenceStore doGetPreferenceStore() {
+               return PreferencesUtil.getPreferenceStore();
+           }
 }
index 5acde9322d3d3638f5cfa2d17b89f97205aea5e1..d1a488cad49c829bdbb0d9d54f68275f62f53240 100644 (file)
@@ -19,6 +19,7 @@ import org.eclipse.ui.IWorkbench;
 import eu.etaxonomy.cdm.database.DbSchemaValidation;
 import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
@@ -52,7 +53,7 @@ public class AbcdImportWizard extends AbstractImportWizard<Abcd206ImportConfigur
            }
 
            CdmStore.getImportManager().runMoniteredOperation(configurator, new File(source), SOURCE_TYPE.INPUTSTREAM);
-           
+
            return true;
 
        }
@@ -61,9 +62,9 @@ public class AbcdImportWizard extends AbstractImportWizard<Abcd206ImportConfigur
        @Override
     public void init(IWorkbench workbench, IStructuredSelection selection) {
                super.init(workbench, selection);
-               configurator =  CdmStore.getImportManager().AbcdConfigurator();
+               configurator =  PreferencesUtil.getAbcdImportConfigurationPreference(true);
        }
-       
+
        @Override
        protected void addConfiguratorPage() {
                AbcdImportConfiguratorWizardPage configuratorWizardPage = AbcdImportConfiguratorWizardPage.createPage(configurator);
index 74f7caa62d1d68100d2bffc0db506d1467d939a0..1936b2e9ddda3bbd38cd6538a58509a7e5c4d93f 100644 (file)
@@ -1,8 +1,8 @@
 /**
 * Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
@@ -22,11 +22,11 @@ import eu.etaxonomy.cdm.io.common.IIoConfigurator;
  * @version 1.0
  */
 public abstract class AbstractExportWizard<CONFIG extends IIoConfigurator> extends Wizard implements IExportWizard{
-       
-       protected final String CONFIGURATION_PAGE = "CONFIGURATION_PAGE"; 
-       
+
+       protected final String CONFIGURATION_PAGE = "CONFIGURATION_PAGE";
+
        private GenericConfiguratorWizardPage pageConfiguration;
-       
+
        /* (non-Javadoc)
         * @see org.eclipse.jface.wizard.Wizard#addPages()
         */
@@ -34,11 +34,11 @@ public abstract class AbstractExportWizard<CONFIG extends IIoConfigurator> exten
        @Override
        public void addPages() {
                super.addPages();
-               
-               pageConfiguration = GenericConfiguratorWizardPage.Export(CONFIGURATION_PAGE, getConfigurator());
+
+               pageConfiguration = GenericConfiguratorWizardPage.Export(CONFIGURATION_PAGE, getConfigurator(), null);
                this.addPage(pageConfiguration);
        }
-       
+
        /**
         * <p>getConfigurator</p>
         *
index aee2f7078818aaddffabfc79936b3ea5e886741e..313ce1e793c404dab1c93fcec02d31d0b32b17b3 100644 (file)
@@ -22,6 +22,7 @@ import org.eclipse.ui.IWorkbenchPage;
 
 import eu.etaxonomy.cdm.io.common.IImportConfigurator;
 import eu.etaxonomy.cdm.io.common.IIoConfigurator;
+import eu.etaxonomy.taxeditor.l10n.Messages;
 
 /**
  * @author n.hoffmann
@@ -32,7 +33,7 @@ public abstract class AbstractImportWizard<CONFIG extends IIoConfigurator> exten
 
        protected final String CONFIGURATION_PAGE = "CONFIGURATION_PAGE";
 
-       private GenericConfiguratorWizardPage pageConfiguration;
+       protected GenericConfiguratorWizardPage pageConfiguration;
        private NomenclaturalCodeWizardPage pageNomenclaturalCode;
 
        private IWorkbench workbench;
@@ -43,15 +44,15 @@ public abstract class AbstractImportWizard<CONFIG extends IIoConfigurator> exten
        @Override
        public void addPages() {
                super.addPages();
-               
+
                addConfiguratorPage();
 
                pageNomenclaturalCode = new NomenclaturalCodeWizardPage((IImportConfigurator)getConfigurator());
                this.addPage(pageNomenclaturalCode);
        }
-       
+
        protected void addConfiguratorPage(){
-               pageConfiguration = GenericConfiguratorWizardPage.Import(CONFIGURATION_PAGE, getConfigurator());
+               pageConfiguration = GenericConfiguratorWizardPage.Import(CONFIGURATION_PAGE, getConfigurator(), null, Messages.AbstractImportWizard_ConfigurationLabel);
                this.addPage(pageConfiguration);
        }
 
index 7610fc8a96472da66e27eb20ed57606c0004b96a..ec77256c86c4b7cb24c409dbd1d0fc58843c328b 100644 (file)
@@ -1,8 +1,8 @@
 /**
  * Copyright (C) 2007 EDIT
- * European Distributed Institute of Taxonomy 
+ * European Distributed Institute of Taxonomy
  * http://www.e-taxonomy.eu
- * 
+ *
  * The contents of this file are subject to the Mozilla Public License Version 1.1
  * See LICENSE.TXT at the top of this package for the full license terms.
  */
@@ -11,8 +11,10 @@ package eu.etaxonomy.taxeditor.io.wizard;
 
 import java.io.File;
 
+import org.eclipse.core.runtime.jobs.Job;
 import org.eclipse.jface.viewers.IStructuredSelection;
 import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.progress.IProgressConstants;
 
 import eu.etaxonomy.cdm.io.dwca.out.DwcaTaxExportConfigurator;
 import eu.etaxonomy.taxeditor.store.CdmStore;
@@ -30,7 +32,7 @@ public class DarwinCoreArchiveExportWizard extends
 
        /*
         * (non-Javadoc)
-        * 
+        *
         * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench,
         * org.eclipse.jface.viewers.IStructuredSelection)
         */
@@ -38,10 +40,10 @@ public class DarwinCoreArchiveExportWizard extends
        public void init(IWorkbench workbench, IStructuredSelection selection) {
                configurator = DwcaTaxExportConfigurator.NewInstance(null, null, null);
        }
+
        /*
         * (non-Javadoc)
-        * 
+        *
         * @see
         * eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#getConfigurator()
         */
@@ -52,7 +54,7 @@ public class DarwinCoreArchiveExportWizard extends
 
        /*
         * (non-Javadoc)
-        * 
+        *
         * @see org.eclipse.jface.wizard.Wizard#performFinish()
         */
        @Override
@@ -62,14 +64,18 @@ public class DarwinCoreArchiveExportWizard extends
 
                configurator.setDestination(new File(urlString));
 
-               CdmStore.getExportManager().run(configurator);
+               Job exportJob = CdmStore.getExportManager().createIOServiceJob(configurator, configurator.getDestination());
+               exportJob.setProperty(IProgressConstants.KEEP_PROPERTY, true);
+               exportJob.setUser(true);
+        // schedule job
+               exportJob.schedule();
 
                return true;
        }
 
        /*
         * (non-Javadoc)
-        * 
+        *
         * @see eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#addPages()
         */
        @Override
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExcelDistributionUpdateWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ExcelDistributionUpdateWizard.java
new file mode 100755 (executable)
index 0000000..0c5d3c3
--- /dev/null
@@ -0,0 +1,123 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.io.wizard;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.net.URI;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.UUID;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.log4j.Logger;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IWorkbench;
+
+import eu.etaxonomy.cdm.database.DbSchemaValidation;
+import eu.etaxonomy.cdm.io.distribution.excelupdate.ExcelDistributionUpdateConfigurator;
+import eu.etaxonomy.taxeditor.l10n.Messages;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+/**
+ * @author k.luther
+ * @date 03.05.2017
+ *
+ */
+public class ExcelDistributionUpdateWizard extends AbstractImportWizard<ExcelDistributionUpdateConfigurator> {
+    private ExcelDistributionUpdateConfigurator configurator;
+
+    private ImportFromFileAndChooseVocIdWizardOage dataSourcePage;
+
+    private static final Logger logger = Logger.getLogger(ExcelDistributionUpdateWizard.class);
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.taxeditor.io.wizard.AbstractImportWizard#getConfigurator()
+     */
+    /** {@inheritDoc} */
+    @Override
+    public ExcelDistributionUpdateConfigurator getConfigurator() {
+        return configurator;
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.wizard.Wizard#performFinish()
+     */
+    /** {@inheritDoc} */
+    @Override
+    public boolean performFinish() {
+        URI source = dataSourcePage.getUri();
+       // configurator.setSource(source);
+        configurator.setDbSchemaValidation(DbSchemaValidation.CREATE);
+        File file = new File(source);
+        FileInputStream fis = null;
+
+        try {
+            fis = new FileInputStream(file);
+        } catch (FileNotFoundException e) {
+            logger.error("Error while reading file" + source.toString());
+        }
+        try {
+            configurator.setStream(IOUtils.toByteArray(fis));
+        } catch (IOException e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+        UUID vocUuid = dataSourcePage.getVocUuid();
+
+        configurator.setAreaVocabularyUuid(vocUuid);
+        Job job = CdmStore.getImportManager().createIOServiceJob(configurator);
+        CdmStore.getImportManager().run(job);
+
+        return true;
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench, org.eclipse.jface.viewers.IStructuredSelection)
+     */
+    /** {@inheritDoc} */
+    @Override
+    public void init(IWorkbench workbench, IStructuredSelection selection) {
+        super.init(workbench, selection);
+        configurator =  CdmStore.getImportManager().ExcelDistributionUpdateConfigurator();
+
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.taxeditor.io.wizard.AbstractImportWizard#addPages()
+     */
+    /** {@inheritDoc} */
+    @Override
+    public void addPages() {
+        addConfiguratorPage();
+        addDataSourcePage();
+
+
+    }
+    @Override
+    protected void addConfiguratorPage(){
+        List<String> ignoreMethods = new ArrayList<>();
+        ignoreMethods.add("setIgnoreNull");
+        ignoreMethods.add("setInteractWithUser");
+        ignoreMethods.add("setUseClassification");
+        pageConfiguration = GenericConfiguratorWizardPage.Import(CONFIGURATION_PAGE, getConfigurator(), ignoreMethods, Messages.ExcelDistributionUpdateWizard_ConfiguratorWizard_label);
+        addPage(pageConfiguration);
+    }
+
+    private void addDataSourcePage(){
+        dataSourcePage = new ImportFromFileAndChooseVocIdWizardOage("Choose Excel File",
+                "Please choose an xls file in the Distribution Update format.", new String[]{"*.xlsx", "*.xls", "*.*"});
+        addPage(dataSourcePage);
+    }
+
+
+}
index 461336da77e38697e48d78ad218a277ef2138d70..01c5143c4f019d61472dd604401e5f1a271e65e9 100644 (file)
@@ -61,7 +61,7 @@ public class ExportToFileDestinationWizardPage extends WizardPage implements Sel
        public static final String SDD_EXPORT = "SDD_EXPORT";
 
        public static final String DWCA_EXPORT = "DWCA_EXPORT";
-
+       public static final String OUTPUT_MODEL_EXPORT = "OUTPUT_MODEL_EXPORT";
        public static final String CSV_EXPORT = "CSV_EXPORT";
        public static final String CSV_NAME_EXPORT = "CSV_NAME_EXPORT";
 
@@ -81,6 +81,8 @@ public class ExportToFileDestinationWizardPage extends WizardPage implements Sel
 
        private static boolean csvPrintExport = false;
 
+       private static boolean outputModelExport = false;
+
        private DirectoryDialog folderDialog;
        private Text text_exportFileName;
 
@@ -176,6 +178,18 @@ public class ExportToFileDestinationWizardPage extends WizardPage implements Sel
                                ZIP);
        }
 
+       /**
+     * @return
+     */
+    public static ExportToFileDestinationWizardPage OutputModel() {
+        outputModelExport = true;
+        return new ExportToFileDestinationWizardPage(
+                OUTPUT_MODEL_EXPORT,
+                "output model",
+                "Output Model Export",
+                "Export the contents of the currently selected database into the output model format.",
+                CSV);
+    }
 
 
     /**
@@ -255,7 +269,7 @@ public class ExportToFileDestinationWizardPage extends WizardPage implements Sel
                }
 
 
-               if(csvExport || csvPrintExport){
+               if(csvExport || csvPrintExport || outputModelExport){
                    Label comboBoxLabel = new Label(composite, SWT.NONE);
                    comboBoxLabel.setText("Classification");
 
@@ -263,17 +277,14 @@ public class ExportToFileDestinationWizardPage extends WizardPage implements Sel
                    classificationSelectionCombo.setLayoutData(new GridData(SWT.FILL, SWT.FILL,
                                true, false, 2, 1));
                }
-
-
-
-
-               Label fileLabel = new Label(composite, SWT.NONE);
-               fileLabel.setText("File");
-
-               text_exportFileName = new Text(composite, SWT.BORDER);
-               text_exportFileName.setText(generateFilename());
-               text_exportFileName.setLayoutData(new GridData(SWT.FILL, SWT.FILL,
-                               true, false, 2, 1));
+               if (!outputModelExport){
+                   Label fileLabel = new Label(composite, SWT.NONE);
+               fileLabel.setText("File");
+               text_exportFileName = new Text(composite, SWT.BORDER);
+               text_exportFileName.setText(generateFilename());
+               text_exportFileName.setLayoutData(new GridData(SWT.FILL, SWT.FILL,
+                               true, false, 2, 1));
+               }
 
                Label folderLabel = new Label(composite, SWT.NONE);
                folderLabel.setText("Folder");
index f70d341487dc44cbd29b09a8f28679d9c96a7244..e586392f062c6a8e0926d7f693a16bfd687ba14c 100644 (file)
@@ -44,19 +44,21 @@ public class GenericConfiguratorWizardPage extends WizardPage {
 
     private final IIoConfigurator configurator;
     private final ResourceBundle resourceBundle;
+    private final List<String> ignoreMethods;
 
     /**
      * @param pageName
      * @param configurator
      */
     private GenericConfiguratorWizardPage(String pageName,
-            IIoConfigurator configurator, String title, String description) {
+            IIoConfigurator configurator, String title, String description, List<String> ignoreMethods) {
         super(pageName);
         this.setTitle(title);
 
         this.setDescription(description);
 
         this.configurator = configurator;
+        this.ignoreMethods = ignoreMethods;
 
 
         resourceBundle = getResourceBundle(configurator);
@@ -64,7 +66,11 @@ public class GenericConfiguratorWizardPage extends WizardPage {
 
     private ResourceBundle getResourceBundle(IIoConfigurator configurator){
         try{
-            return ResourceBundle.getBundle(configurator.getClass().getName());
+            if (configurator != null){
+                return ResourceBundle.getBundle(configurator.getClass().getName());
+            }else{
+                return ResourceBundle.getBundle("Configuration");
+            }
         }catch(MissingResourceException e){
             return null;
         }
@@ -84,9 +90,9 @@ public class GenericConfiguratorWizardPage extends WizardPage {
      *         object.
      */
     public static GenericConfiguratorWizardPage Import(String pageName,
-            IIoConfigurator configurator) {
+            IIoConfigurator configurator, List<String> ignoreMethods, String label) {
         return new GenericConfiguratorWizardPage(pageName, configurator,
-                "Import Configuration", "Configure the import mechanism.");
+                "Import Configuration", label, ignoreMethods);
     }
 
     /**
@@ -103,9 +109,9 @@ public class GenericConfiguratorWizardPage extends WizardPage {
      *         object.
      */
     public static GenericConfiguratorWizardPage Export(String pageName,
-            IIoConfigurator configurator) {
+            IIoConfigurator configurator, List<String> ignoreMethods) {
         return new GenericConfiguratorWizardPage(pageName, configurator,
-                "Export Configuration", "Configure the export mechanism.");
+                "Export Configuration", "Configure the export mechanism.", ignoreMethods);
     }
 
     /*
@@ -158,7 +164,9 @@ public class GenericConfiguratorWizardPage extends WizardPage {
         });
 
         for (Method method : methods) {
-            createCheckbox(composite, method, configurator);
+            if (!ignoreMethods.contains( method.getName())) {
+                createCheckbox(composite, method, configurator);
+            }
         }
 
         // scrolledComposite.setContent(composite);
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ImportFromFileAndChooseVocIdWizardOage.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/ImportFromFileAndChooseVocIdWizardOage.java
new file mode 100755 (executable)
index 0000000..d229c46
--- /dev/null
@@ -0,0 +1,115 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.io.wizard;
+
+import java.util.List;
+import java.util.UUID;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+
+import eu.etaxonomy.cdm.api.service.IVocabularyService;
+import eu.etaxonomy.cdm.common.CdmUtils;
+import eu.etaxonomy.cdm.model.common.DefinedTermBase;
+import eu.etaxonomy.cdm.model.common.TermType;
+import eu.etaxonomy.cdm.model.common.TermVocabulary;
+import eu.etaxonomy.taxeditor.l10n.Messages;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+/**
+ * @author k.luther
+ * @date 04.05.2017
+ *
+ */
+public class ImportFromFileAndChooseVocIdWizardOage extends ImportFromFileDataSourceWizardPage {
+
+    private Combo vocabularyCombo;
+    UUID vocUuid;
+    String[][] labelAndValues;
+    /**
+     * @param title
+     * @param description
+     * @param extensions
+     */
+    protected ImportFromFileAndChooseVocIdWizardOage(String title, String description, String[] extensions) {
+        super(title, description, extensions);
+
+    }
+
+    @Override
+    public void createControl(Composite parent) {
+        super.createControl(parent);
+        Composite composite = (Composite)getControl();
+      //  final Composite composite = new Composite(parent, SWT.NULL);
+        GridData gridData = new GridData(SWT.FILL, SWT.TOP, true, false);
+        composite.setLayoutData(gridData);
+        Label label = new Label(composite, SWT.NONE);
+        label.setText(Messages.ImportFromFileAndChooseVocIdWizardPage_AreaVoc);
+        label.setToolTipText(Messages.ImportFromFileAndChooseVocIdWizardOage_AreaVoc_toolTip);
+        vocabularyCombo = new Combo(composite, SWT.DROP_DOWN);
+        List<TermVocabulary<DefinedTermBase>> vocs = CdmStore.getService(IVocabularyService.class).findByTermType(TermType.NamedArea);
+        for(TermVocabulary voc: vocs){
+            vocabularyCombo.add(voc.getLabel());
+        }
+        getLabelAndValues(vocs);
+        vocabularyCombo.select(0);
+        vocabularyCombo.addSelectionListener(new SelectionAdapter(){
+
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+                String name = vocabularyCombo.getText();
+
+                for (String[] labelAndValue: labelAndValues){
+                    if (labelAndValue[0].equals(name)){
+                        String uuidString = labelAndValue[1];
+                        vocUuid = UUID.fromString(uuidString);
+                        setPageComplete(isPageComplete());
+                    }
+                }
+
+            }
+
+        });
+        //setControl(composite);
+    }
+
+    public UUID getVocUuid() {
+        return vocUuid;
+    }
+
+    public void setVocUuid(UUID vocUuid) {
+        this.vocUuid = vocUuid;
+    }
+
+    /**
+     * @return
+     */
+    private String[][] getLabelAndValues(List<TermVocabulary<DefinedTermBase>> vocs) {
+
+        labelAndValues = new String[vocs.size()][2];
+        for (int i = 0; i < vocs.size(); i++) {
+            labelAndValues[i][0] = vocs.get(i).getLabel();
+            labelAndValues[i][1] = vocs.get(i).getUuid().toString();
+        }
+        return labelAndValues;
+    }
+
+    @Override
+    public boolean isPageComplete() {
+        boolean result = CdmUtils.isNotBlank(text_source.getText()) && vocUuid != null;
+
+        return result;
+    }
+
+}
index 935d57ff3d11a3a2090cf7593acda738cc40f018..8b3f2dd80f20ef45f624613e97aabc940de6a596 100644 (file)
@@ -89,7 +89,7 @@ public class ImportFromFileDataSourceWizardPage extends AbcdSourceSelectionPage
                                String path = fileDialog.open();
                                if(path!=null){
                                    text_source.setText(path);
-                                   setPageComplete(true);
+                                   setPageComplete(isPageComplete());
                                }
                        }
 
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/OutputModelExportWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/OutputModelExportWizard.java
new file mode 100755 (executable)
index 0000000..3a13622
--- /dev/null
@@ -0,0 +1,119 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.io.wizard;
+
+import java.io.File;
+import java.util.HashSet;
+import java.util.List;
+import java.util.UUID;
+
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.progress.IProgressConstants;
+
+import eu.etaxonomy.cdm.io.outputmodel.OutputModelConfigurator;
+import eu.etaxonomy.cdm.model.taxon.Classification;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+/**
+ * @author k.luther
+ * @date 21.03.2017
+ *
+ */
+public class OutputModelExportWizard extends
+     AbstractExportWizard<OutputModelConfigurator> {
+
+        private OutputModelConfigurator configurator;
+        private ExportToFileDestinationWizardPage page;
+
+        private final String description = "Export the contents of the currently selected database into Comma Separated Value format.";
+        /*
+         * (non-Javadoc)
+         *
+         * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench,
+         * org.eclipse.jface.viewers.IStructuredSelection)
+         */
+        @Override
+        public void init(IWorkbench workbench, IStructuredSelection selection) {
+            configurator = new OutputModelConfigurator(null);
+        }
+
+        /*
+         * (non-Javadoc)
+         *
+         * @see
+         * eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#getConfigurator()
+         */
+        @Override
+        public OutputModelConfigurator getConfigurator() {
+            return configurator;
+        }
+
+        /*
+         * (non-Javadoc)
+         *
+         * @see org.eclipse.jface.wizard.Wizard#performFinish()
+         */
+        @Override
+        public boolean performFinish() {
+            String urlString = page.getFolderText() + File.separator;
+                    //+ page.getExportFileName();
+
+            final Combo combo = page.getCombo();
+            final List<Classification> listClassifications = CdmStore.getCurrentApplicationConfiguration().getClassificationService().listClassifications(null, null, null, null);
+            if(combo != null){
+                int selectionIndex = combo.getSelectionIndex();
+                HashSet<UUID> set = new HashSet<UUID>();
+                if(selectionIndex == -1){
+                    for(Classification c:listClassifications){
+                        set.add(c.getUuid());
+                    }
+                }else{
+                    for(Classification c:listClassifications){
+                        if(c.getTitleCache().equalsIgnoreCase(combo.getItem(selectionIndex))){
+                            set.add(c.getUuid());
+                        }
+                    }
+                    configurator.setClassificationUuids(set);
+
+                }
+            }
+
+            // create job
+            Job job = CdmStore.getExportManager().createIOServiceJob(configurator, urlString);
+            // configure the job
+            job.setProperty(IProgressConstants.KEEP_PROPERTY, true);
+            job.setUser(true);
+            // schedule job
+            job.schedule();
+
+            return true;
+        }
+
+        /*
+         * (non-Javadoc)
+         *
+         * @see eu.etaxonomy.taxeditor.io.wizard.AbstractExportWizard#addPages()
+         */
+        @Override
+        public void addPages() {
+            //TODO create page with drop down menu for export for single classification.
+//          super.addPages();
+
+
+            //standard page
+            page =  ExportToFileDestinationWizardPage.OutputModel();
+
+            addPage(page);
+        }
+
+
+}
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/RISImportWizard.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/RISImportWizard.java
new file mode 100755 (executable)
index 0000000..c7f667d
--- /dev/null
@@ -0,0 +1,130 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.io.wizard;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.net.URI;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.commons.io.IOUtils;
+import org.apache.log4j.Logger;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IWorkbench;
+
+import eu.etaxonomy.cdm.database.DbSchemaValidation;
+import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE;
+import eu.etaxonomy.cdm.io.reference.ris.in.RisReferenceImportConfigurator;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+/**
+ * @author k.luther
+ * @date 12.05.2017
+ *
+ */
+public class RISImportWizard extends AbstractImportWizard<RisReferenceImportConfigurator>{
+    private RisReferenceImportConfigurator configurator;
+
+    private ImportFromFileDataSourceWizardPage dataSourcePage;
+
+    private static final Logger logger = Logger.getLogger(ExcelDistributionUpdateWizard.class);
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.taxeditor.io.wizard.AbstractImportWizard#getConfigurator()
+     */
+    /** {@inheritDoc} */
+    @Override
+    public RisReferenceImportConfigurator getConfigurator() {
+        return configurator;
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.jface.wizard.Wizard#performFinish()
+     */
+    /** {@inheritDoc} */
+    @Override
+    public boolean performFinish() {
+        URI source = dataSourcePage.getUri();
+       // configurator.setSource(source);
+//        try {
+//            configurator = RisReferenceImportConfigurator.NewInstance(source, null);
+//        } catch (MalformedURLException e1) {
+//            // TODO Auto-generated catch block
+//            e1.printStackTrace();
+//        } catch (IOException e1) {
+//            // TODO Auto-generated catch block
+//            e1.printStackTrace();
+//        }
+        configurator.setDbSchemaValidation(DbSchemaValidation.CREATE);
+        File file = new File(source);
+       FileInputStream fis;
+
+        try {
+            fis = new FileInputStream(file);
+            byte[] data;
+            data = IOUtils.toByteArray(fis);
+            configurator.setStream(data);
+//TODO: workaround, needs to be changed to source as byte array
+            Job job = CdmStore.getImportManager().createIOServiceJob(configurator, data, SOURCE_TYPE.INPUTSTREAM);
+            CdmStore.getImportManager().run(job);
+        } catch (FileNotFoundException e) {
+            logger.error("Error while reading file" + source.toString());
+        } catch (IOException e){
+
+        }
+
+        //CdmStore.getImportManager().runMoniteredOperation(configurator, new File(source), SOURCE_TYPE.INPUTSTREAM);
+
+
+        return true;
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.IWorkbenchWizard#init(org.eclipse.ui.IWorkbench, org.eclipse.jface.viewers.IStructuredSelection)
+     */
+    /** {@inheritDoc} */
+    @Override
+    public void init(IWorkbench workbench, IStructuredSelection selection) {
+        super.init(workbench, selection);
+        configurator = RisReferenceImportConfigurator.NewInstance();
+
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.taxeditor.io.wizard.AbstractImportWizard#addPages()
+     */
+    /** {@inheritDoc} */
+    @Override
+    public void addPages() {
+        //addConfiguratorPage();
+        addDataSourcePage();
+
+
+    }
+    @Override
+    protected void addConfiguratorPage(){
+        List<String> ignoreMethods = new ArrayList<>();
+        ignoreMethods.add("setIgnoreNull");
+        ignoreMethods.add("setInteractWithUser");
+        ignoreMethods.add("setUseClassification");
+        pageConfiguration = GenericConfiguratorWizardPage.Import(CONFIGURATION_PAGE, getConfigurator(), ignoreMethods, "Ris Import");
+        addPage(pageConfiguration);
+    }
+
+    private void addDataSourcePage(){
+        dataSourcePage = new ImportFromFileDataSourceWizardPage("Choose Ris File",
+                "Please choose an xls file in the Distribution Update format.", new String[]{"*.txt"});
+        addPage(dataSourcePage);
+    }
+
+}
index d98368fe5f8f6e574b94f21dbfb1e32e68fb65cf..cda11a47b1d22340af36363ef531443749dd648b 100644 (file)
@@ -85,6 +85,9 @@ public class Messages extends NLS {
        public static String CdmStoreConnector_SCHEME_NOT_COMPATIBLE;
        public static String CdmStoreConnector_UPDATE_DATASOUREC_OR_CHOOSE_NEW_DATASOURCE;
        public static String CdmStoreConnector_UPDATE_EDITOR_OR_CHOOSE_COMPATIBLE_DATASOURCE;
+
+
+    public static String ConfiguratorComposite_CONFIGURE;
        public static String DetailsViewPart_VIEWER_NAME;
     public static String EditPasswordElement_PLEASE_CREATE_OR_SAVE_USER;
     public static String EditPasswordElement_USERNAME_DOES_NOT_EXIST;
@@ -186,6 +189,16 @@ public class Messages extends NLS {
     public static String DatabasePreferencesPage_UseLocalPreferences;
     public static String DatabasePreferencesPage_Specimen_Or_Observation;
 
+    public static String ImportFromFileAndChooseVocIdWizardPage_AreaVoc;
+
+    public static String ImportFromFileAndChooseVocIdWizardOage_AreaVoc_toolTip;
+
+
+    public static String ExcelDistributionUpdateWizard_ConfiguratorWizard_label;
+
+
+    public static String AbstractImportWizard_ConfigurationLabel;
+
     static {
         // initialize resource bundle
         NLS.initializeMessages(BUNDLE_NAME, Messages.class);
index eae60e91db33c21e65840f5d6db62027521f22fb..02cec722c91a75a92f19532d3f2f14b49665bbb4 100644 (file)
@@ -29,16 +29,14 @@ DatabaseRepairPage_toolTip_taxonBase=Caches of all taxa and synonyms are recalcu
 DatabaseRepairPage_Reference=References
 DatabaseRepairPage_toolTip_reference=Caches of all references are recalculated.
 
-
-
 UriWithLabelElement_URL_NOT_SAVED=URI won't be saved\! 
 UriWithLabelElement_COULD_NOT_OPEN_BROWSER=Could not open external browser. URI is invalid.
 UriWithLabelElement_INVALID_URL=Invalid URI
 UriWithLabelElement_OPEN_EXTERNAL_BROWSER=Open in external browser
 
-ChangeConnectionHandler_DATASOURCE_NOT_AVAILABLE=Chosen datasource is not available
-ChangeConnectionHandler_CURRENTLY_CONNECTING_ALREADY=You are currently creating a data model for a datasource already.
 ChangeConnectionHandler_ALREADY_CONNECTING=Already creating data model
+ChangeConnectionHandler_CURRENTLY_CONNECTING_ALREADY=You are currently creating a data model for a datasource already.
+ChangeConnectionHandler_DATASOURCE_NOT_AVAILABLE=Chosen datasource is not available
 ChangeConnectionHandler_NOT_AVAILABLE_REASONS=This could mean that either the database server is not running or the machine is not reachable.\n\n Please also make sure that you are connected to the network when trying to connect to a remote datasource.
 ChangeConnectionHandler_CREATE_DATAMODEL=Create Data Model
 ChangeConnectionHandler_REALLY_CREATE_DATAMODEL=Do you want to create the data model for %s?\n\nCAUTION: Existing data will be deleted!\n\nNote: Creating the data model may take some time.
@@ -68,6 +66,7 @@ CdmStoreConnector_REASON=Reason:
 CdmStoreConnector_SCHEME_NOT_COMPATIBLE=The database schema for the chosen datasource '%s' \n is not compatible for this version of the taxonomic editor. \n\n%s
 CdmStoreConnector_UPDATE_DATASOUREC_OR_CHOOSE_NEW_DATASOURCE=Please update the chosen datasource or choose a new data source to connect to in the Datasource View.
 CdmStoreConnector_UPDATE_EDITOR_OR_CHOOSE_COMPATIBLE_DATASOURCE=Please update the Taxonomic Editor (Help->Check for Updates) or choose a compatible datasource
+ConfiguratorComposite_CONFIGURE=Configure
 
 RemotingLoginDialog_CHOOSE_COMPATIBLE_CDM_SERVER=Please choose a compatible cdm-server or update the chosen cdm-server
 RemotingLoginDialog_LABEL_ADVANCED=advanced
@@ -179,4 +178,7 @@ DatabasePreferencesPage_Define_Default_NomenclaturalCode=Define default nomencla
 DatabasePreferencesPage_UseLocalPreferences=Allow to use local preference
 DatabasePreferencesPage_Specimen_Or_Observation=Specimen or observation configuration
 
-
+ImportFromFileAndChooseVocIdWizardPage_AreaVoc=Area Vocabulary
+ImportFromFileAndChooseVocIdWizardOage_AreaVoc_toolTip=Please choose a vocabulary for the used areas.
+ExcelDistributionUpdateWizard_ConfiguratorWizard_label=Configure Excel distribution update
+AbstractImportWizard_ConfigurationLabel=Configure the Import
index 5362e37eb861e8634d68e953e87566b745b9c140..8213d6aa2a558990e3185e6c0740fc1a25d6efbf 100644 (file)
@@ -66,6 +66,7 @@ CdmStoreConnector_REASON=Grund:
 CdmStoreConnector_SCHEME_NOT_COMPATIBLE=Das Datenbankschema für die gewählte Datenquelle '%s' \n ist nicht kompatibel mit dieser Version des Editors. \n\n%s
 CdmStoreConnector_UPDATE_DATASOUREC_OR_CHOOSE_NEW_DATASOURCE=Bitte aktualisieren Sie die ausgewählte Datenquelle oder wählen Sie eine neue Datenquelle aus.
 CdmStoreConnector_UPDATE_EDITOR_OR_CHOOSE_COMPATIBLE_DATASOURCE=Bitte aktualisieren Sie den Taxonomic Editor (Hilfe->Suche nach Updates) oder wählen sie eine kompatible Datenquelle
+ConfiguratorComposite_CONFIGURE=Einstellungen
 
 RemotingLoginDialog_CHOOSE_COMPATIBLE_CDM_SERVER=Bitte wählen Sie einen kompatiblen CDM-Server oder aktualisieren sie den CDM-Server
 RemotingLoginDialog_LABEL_ADVANCED=Erweitert
@@ -136,8 +137,8 @@ PresenceAbsenceTermDetailElement_COLOR_NOT_SET=Farbe konnte nicht gespeichert we
 PresenceAbsenceTermDetailElement_LABEL_COLOR=Farbe
 
 DeleteConfiguration_media_removeFromGallery=Entferne Medienobjekt aus der Gallerie, aber behalte es in der Datenbank
-DeleteConfiguration_media_deleteIfUsedInTaxonDescription=Lösche das Medienobjekt, auch wenn es von einem Taxon verwendet wird
-DeleteConfiguration_media_deleteIfUsedInSpecimenDescription=Lösche das Medienobjekt, auch wenn es von einem Specimen verwendet wird
+DeleteConfiguration_media_deleteIfUsedInTaxonDescription=Lösche das Medienobjekt, auch wenn es  Teil einer Taxonbeschreibung ist
+DeleteConfiguration_media_deleteIfUsedInSpecimenDescription=Lösche das Medienobjekt, auch wenn es Teil einer Specimenbeschreibung ist
 DeleteConfiguration_media_delete=Lösche das Medienobjekt
 
 NewGrantedAuthority_AlreadyInDb=Die GrantedAuthority ist bereits in der DB enthalten.
@@ -176,3 +177,8 @@ DatabasePreferencesPage_Show_NameRelations=Zeige Namensrelationen
 DatabasePreferencesPage_Define_Default_NomenclaturalCode=Festlegen des default Nomenklatorischen Codes
 DatabasePreferencesPage_UseLocalPreferences=Erlaube das lokale Ãœberschreiben
 DatabasePreferencesPage_Specimen_Or_Observation=Konfiguration von Specimen und Observationen
+
+ImportFromFileAndChooseVocIdWizardPage_AreaVoc=Area Vokabular
+ImportFromFileAndChooseVocIdWizardOage_AreaVoc_toolTip=Bitte wählen Sie ein Vokabular für die genutzten Areas aus.
+ExcelDistributionUpdateWizard_ConfiguratorWizard_label=Konfiguration des Excel Distribution Updates
+AbstractImportWizard_ConfigurationLabel=Konfiguration des Imports
index a490390a637d2b46e6ef073a324e6a39f07ec447..f1ffe8abed386ad53b539815efbe56e8b060a8ec 100644 (file)
@@ -38,7 +38,6 @@ import org.eclipse.jface.action.IStatusLineManager;
 import org.eclipse.jface.operation.IRunnableWithProgress;
 import org.eclipse.jface.resource.ColorRegistry;
 import org.eclipse.jface.resource.FontRegistry;
-import org.eclipse.jface.window.ApplicationWindow;
 import org.eclipse.swt.graphics.Color;
 import org.eclipse.swt.graphics.Font;
 import org.eclipse.swt.widgets.Display;
@@ -167,11 +166,11 @@ public abstract class AbstractUtility {
      *
      * @return a {@link org.eclipse.jface.window.ApplicationWindow} object.
      */
-    public static ApplicationWindow getWorkbenchWindow() {
+    public static IWorkbenchWindow getWorkbenchWindow() {
         if (getWorkbench().getWorkbenchWindowCount() > 1) {
             throw new IllegalStateException("More than one workbench window");
         }
-        return (ApplicationWindow) getWorkbench().getWorkbenchWindows()[0];
+        return getWorkbench().getWorkbenchWindows()[0];
     }
 
     /**
index 2ee64bba9f709b1167d1abcbb6b396533a0a2034..ea4c9303650b13c15bce17a559e2d18039fdf7a5 100644 (file)
@@ -1,8 +1,8 @@
 /**
 * Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
@@ -14,6 +14,7 @@ import java.util.Arrays;
 import java.util.List;
 
 import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 
 /**
  * <p>NomenclaturalCodeHelper class.</p>
@@ -23,7 +24,7 @@ import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
  * @version 1.0
  */
 public class NomenclaturalCodeHelper {
-               
+
        /**
         * <p>getAllCodes</p>
         *
@@ -43,12 +44,16 @@ public class NomenclaturalCodeHelper {
                List<NomenclaturalCode> supportedCodes = new ArrayList<NomenclaturalCode>();
                for (NomenclaturalCode code : getAllCodes()) {
                        if (isSupported(code)) {
-                               supportedCodes.add(code);
+                           if (PreferencesUtil.getPreferredNomenclaturalCode().equals(code)){
+                               supportedCodes.add(0, code);
+                           }else{
+                               supportedCodes.add(code);
+                           }
                        }
                }
                return supportedCodes;
        }
-       
+
        /**
         * @param code
         * @return
@@ -80,13 +85,13 @@ public class NomenclaturalCodeHelper {
                }
                if (code.equals(NomenclaturalCode.ICZN)) {
                        return "International Code of Zoological Nomenclature (ICZN)";
-               }               
+               }
                if (code.equals(NomenclaturalCode.ICVCN)) {
                        return "International Code for Virus Classification and Nomenclature (ICVCN)";
-               } 
+               }
                return code.name();
        }
-       
+
        /**
         * <p>getDefaultCode</p>
         *
index de203e282332a271447f2b985d0ab185c7216011..4d8132fd50c298a1159f91a6e3f5971a23fa4a32 100644 (file)
@@ -52,7 +52,7 @@ public class NewGrantedAuthorityWizard extends AbstractNewEntityWizard<GrantedAu
         */
        @Override
        protected GrantedAuthorityImpl createNewEntity() {
-               return GrantedAuthorityImpl.NewInstance();
+               return GrantedAuthorityImpl.NewInstance("");
        }
 
        /* (non-Javadoc)
index 05c886aaa34bd671a765b39c3c69c67c0b4702f2..bd74c7a3cfffbd55ab0b3fafbec54423265e6aa9 100644 (file)
@@ -27,29 +27,17 @@ public interface IPreferenceKeys {
     public static final String ALLOW_OVERRIDE_NOMENCLATURAL_CODE_KEY = "eu.etaxonomy.taxeditor.nomenclaturalCode.allow_override";
     public static final String CDM_NOMENCLATURAL_CODE_KEY = "eu.etaxonomy.taxeditor.cdm.nomenclaturalCode";
        /**
-        *
+        * TaxonSearch Configurator
         */
        public static final String TAXON_SERVICE_CONFIGURATOR_TAXA = "eu.etaxonomy.taxeditor.taxonServiceConfigurator.doTaxa";
 
-       /**
-        *
-        */
        public static final String TAXON_SERVICE_CONFIGURATOR_SYNONYMS = "eu.etaxonomy.taxeditor.taxonServiceConfigurator.doSynonyms";
 
-       /**
-        *
-        */
        public static final String TAXON_SERVICE_CONFIGURATOR_NAMES = "eu.etaxonomy.taxeditor.taxonServiceConfigurator.doNamesWithoutTaxa";
 
-       /**
-        *
-        */
        public static final String TAXON_SERVICE_CONFIGURATOR_COMMON_NAMES = "eu.etaxonomy.taxeditor.taxonServiceConfigurator.doTaxaByCommonNames";
 
-       /**
-    *
-    */
-   public static final String TAXON_SERVICE_CONFIGURATOR_MATCH_MODE = "eu.etaxonomy.taxeditor.taxonServiceConfigurator.doSearchByMatchMode";
+       public static final String TAXON_SERVICE_CONFIGURATOR_MATCH_MODE = "eu.etaxonomy.taxeditor.taxonServiceConfigurator.doSearchByMatchMode";
 
        /**
         * Whether to show UUID and database id in the supplemental data view.
@@ -175,9 +163,6 @@ public interface IPreferenceKeys {
     public static final String SHOW_NAME_DETAILS_SECTION_AUTHORSHIP_CACHE = "eu.etaxonomy.taxeditor.name.showAuthorCache";
     public static final String PROMPT_FOR_OPEN_SPECIMEN_IN_EDITOR = "eu.etaxonomy.taxeditor.specimen.promptForOpenSpecimenInEditor";
 
-    // TODO RL
-
-
     public static final String DEFAULT_LANGUAGE_EDITOR = "eu.etaxonomy.taxeditor.default.language";
 
     public static final String IS_SHOW_UP_WIDGET_IS_DISPOSED = "eu.etaxonomy.taxeditor.isShowUpWidgetIsDisposed";
@@ -190,9 +175,36 @@ public interface IPreferenceKeys {
     public static final String ALLOW_OVERRIDE_RL = "eu.etaxonomy.taxeditor.isRL.allow_override";
 
 
-
-
-
+    /*
+     * Keys for the Abcd Import Configurator
+     *
+     */
+    public static final String ABCD_IMPORT_CONFIGURATOR_SOURCE_URI = "eu.etaxonomy.taxeditor.abcd_import_configurator.sourceUri";
+    public static final String ABCD_IMPORT_CONFIGURATOR_DO_SIBLINGS = "eu.etaxonomy.taxeditor.abcd_import_configurator.doSiblings";
+    public static final String ABCD_IMPORT_CONFIGURATOR_IGNORE_IMPORT_OF_EXISTING_SPECIMEN= "eu.etaxonomy.taxeditor.abcd_import_configurator.ignoreImportOfExistingSpecimen";
+    public static final String ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_TAXA_WHEN_POSSIBLE= "eu.etaxonomy.taxeditor.abcd_import_configurator.reuseExistingTaxaWhenPossible";
+    public static final String ABCD_IMPORT_CONFIGURATOR_IGNORE_AUTHORSHIP= "eu.etaxonomy.taxeditor.abcd_import_configurator.ignoreAuthorship";
+    public static final String ABCD_IMPORT_CONFIGURATOR_REMOVE_COUNTRY_FROM_LOCALITY_TEXT= "eu.etaxonomy.taxeditor.abcd_import_configurator.removeCountryFromLocalityText";
+    public static final String ABCD_IMPORT_CONFIGURATOR_ADD_MEDIA_AS_MEDIASPECIMEN= "eu.etaxonomy.taxeditor.abcd_import_configurator.addMediaAsMediaSpecimen";
+    public static final String ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_META_DATA= "eu.etaxonomy.taxeditor.abcd_import_configurator.reuseExistingMetaData";
+    public static final String ABCD_IMPORT_CONFIGURATOR_ADD_INDIVIDUALS_ASSOCIATIONS_SUCH_AS_SPECIMEN_AND_OBSERVATIONS= "eu.etaxonomy.taxeditor.abcd_import_configurator.addIndividualsAssociationsSuchAsSpecimenAndObservations";
+    public static final String ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_DESCRIPTIVE_GROUPS= "eu.etaxonomy.taxeditor.abcd_import_configurator.reuseExistingDescriptiveGroups";
+    public static final String ABCD_IMPORT_CONFIGURATOR_ALLOW_REUSE_OTHER_CLASSIFICATIONS= "eu.etaxonomy.taxeditor.abcd_import_configurator.allowReuseOtherClassifications";
+    public static final String ABCD_IMPORT_CONFIGURATOR_DEDUPLICATE_REFERENCES= "eu.etaxonomy.taxeditor.abcd_import_configurator.deduplicateReferences";
+    public static final String ABCD_IMPORT_CONFIGURATOR_DEDUPLICATE_CLASSIFICATIONS= "eu.etaxonomy.taxeditor.abcd_import_configurator.deduplicateClassifications";
+    public static final String ABCD_IMPORT_CONFIGURATOR_MOVE_NEW_TAXA_TO_DEFAULT_CLASSIFICATION= "eu.etaxonomy.taxeditor.abcd_import_configurator.moveNewTaxaToDefaultClassification";
+    public static final String ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TOCATALOG_NUMBER= "eu.etaxonomy.taxeditor.abcd_import_configurator.mapUnitIdToCatalogNumber";
+    public static final String ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TO_ACCESSION_NUMBER= "eu.etaxonomy.taxeditor.abcd_import_configurator.mapUnitIdToAccessionNumber";
+    public static final String ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TO_BARCODE= "eu.etaxonomy.taxeditor.abcd_import_configurator.mapUnitIdToBarcode";
+    public static final String ABCD_IMPORT_CONFIGURATOR_OVERWRITE_EXISTING_SPECIMEN= "eu.etaxonomy.taxeditor.abcd_import_configurator.overwriteExistingSpecimens";
+    public static final String ABCD_IMPORT_CONFIGURATOR_DEFAULT_AUTHOR = "eu.etaxonomy.taxeditor.abcd_import_configurator.defaultAuthor";
+    public static final String ABCD_IMPORT_CONFIGURATOR_CLASSIFICATION_UUID =  "eu.etaxonomy.taxeditor.abcd_import_configurator.classificationUuid";
+    public static final String ALLOW_OVERRIDE_ABCD_IMPORT_CONFIG = "eu.etaxonomy.taxeditor.abcd_import_configurator.allowOverride";
+    public static final String BIOCASE_PROVIDER_LIST = "eu.etaxonomy.taxeditor.abcd_import.biocaseProviderList";
+
+    /*
+     * Keys for the biocase providers
+     */
 
 
 
index 3ef53365ab7ac0abf02fb2351ab1750fa93379b5..24beb44d4c279bbd46ea3a8b902ec645dc57bd6f 100644 (file)
@@ -26,6 +26,7 @@ import java.util.StringTokenizer;
 import java.util.UUID;
 
 import org.apache.commons.lang.StringUtils;
+import org.apache.log4j.Logger;
 import org.eclipse.equinox.internal.p2.ui.model.MetadataRepositoryElement;
 import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.jface.window.Window;
@@ -42,6 +43,7 @@ import eu.etaxonomy.cdm.api.service.config.FindTaxaAndNamesConfiguratorImpl;
 import eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator;
 import eu.etaxonomy.cdm.common.CdmUtils;
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
+import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator;
 import eu.etaxonomy.cdm.model.common.ICdmBase;
 import eu.etaxonomy.cdm.model.common.IDefinedTerm;
 import eu.etaxonomy.cdm.model.common.ISimpleTerm;
@@ -85,7 +87,7 @@ public class PreferencesUtil implements IPreferenceKeys {
        public static final String P2_REPOSITORIES_DELIM = ",";
        public static final String P2_REPOSITORY_FIELDS_DELIM = ";";
 
-
+       private final static Logger logger = Logger.getLogger(PreferencesUtil.class);
 
        /**
         * <p>
@@ -1082,6 +1084,116 @@ public class PreferencesUtil implements IPreferenceKeys {
         return Boolean.valueOf(preference.getValue());
     }
 
+//    public static boolean getBioCaseProvider(boolean local){
+//        CdmPreference preference = null;
+//
+//        if (!local) {
+//            preference = getPreferenceFromDB(PreferencePredicate.BioCaseProvider);
+//        }
+//        if (preference == null){
+//            return getPreferenceStore().getBoolean(SHOW_TAXON_ASSOCIATIONS);
+//        }
+//        return Boolean.valueOf(preference.getValue());
+//    }
+
+
+    /**
+     * <p>
+     * setAbcdConfigurator
+     * </p>
+     *
+     * @param preferredConfiguration
+     *            a {@link eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator}
+     *            object.
+     */
+    public static Abcd206ImportConfigurator getAbcdImportConfigurationPreference(boolean useLocal) {
+
+        Abcd206ImportConfigurator config = Abcd206ImportConfigurator.NewInstance(null,null);
+
+        if (useLocal){
+            config.setAddIndividualsAssociationsSuchAsSpecimenAndObservations(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ADD_INDIVIDUALS_ASSOCIATIONS_SUCH_AS_SPECIMEN_AND_OBSERVATIONS));
+
+            config.setAddMediaAsMediaSpecimen(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ADD_MEDIA_AS_MEDIASPECIMEN));
+
+            config.setAllowReuseOtherClassifications(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_ALLOW_REUSE_OTHER_CLASSIFICATIONS));
+            config.setDeduplicateClassifications(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DEDUPLICATE_CLASSIFICATIONS));
+            config.setDeduplicateReferences(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DEDUPLICATE_REFERENCES));
+
+            config.setGetSiblings(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_DO_SIBLINGS));
+            config.setIgnoreAuthorship(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_IGNORE_AUTHORSHIP));
+            config.setIgnoreImportOfExistingSpecimen(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_IGNORE_IMPORT_OF_EXISTING_SPECIMEN));
+            config.setMapUnitIdToAccessionNumber(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TO_ACCESSION_NUMBER));
+            config.setMapUnitIdToBarcode(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TO_BARCODE));
+            config.setMapUnitIdToCatalogNumber(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MAP_UNIT_ID_TOCATALOG_NUMBER));
+            config.setMoveNewTaxaToDefaultClassification(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_MOVE_NEW_TAXA_TO_DEFAULT_CLASSIFICATION));
+            config.setOverwriteExistingSpecimens(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_OVERWRITE_EXISTING_SPECIMEN));
+            config.setReuseExistingDescriptiveGroups(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_DESCRIPTIVE_GROUPS));
+            config.setReuseExistingMetaData(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_META_DATA));
+            config.setReuseExistingTaxaWhenPossible(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.ABCD_IMPORT_CONFIGURATOR_REUSE_EXISTING_TAXA_WHEN_POSSIBLE));
+            return config;
+
+        }
+            ICdmRepository controller;
+            controller = CdmStore.getCurrentApplicationConfiguration();
+            PrefKey key = CdmPreference.NewKey(PreferenceSubject.NewDatabaseInstance(), PreferencePredicate.AbcdImportConfig);
+            CdmPreference preference = null;
+            if (controller == null){
+                return null;
+            }
+            preference = controller.getPreferenceService().find(key);
+            if (preference == null){
+                return config;
+             } else{
+             String configString = preference.getValue();
+             String[] configArray = configString.split(";");
+
+             for (String configItem: configArray){
+                 String[] keyValue = configItem.split(":");
+                 String keyString = keyValue[0];
+                 String valueString = keyValue[1];
+                 if (keyString.equals("ignoreImportOfExistingSpecimen")){
+                     config.setIgnoreImportOfExistingSpecimen(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("addIndividualsAssociationsSuchAsSpecimenAndObservations")){
+                     config.setAddIndividualsAssociationsSuchAsSpecimenAndObservations(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("reuseExistingTaxaWhenPossible")){
+                     config.setReuseExistingTaxaWhenPossible(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("ignoreAuthorship")){
+                     config.setIgnoreAuthorship(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("addMediaAsMediaSpecimen")){
+                     config.setAddMediaAsMediaSpecimen(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("reuseExistingMetaData")){
+                     config.setReuseExistingMetaData(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("reuseExistingDescriptiveGroups")){
+                     config.setReuseExistingDescriptiveGroups(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("allowReuseOtherClassifications")){
+                     config.setAllowReuseOtherClassifications(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("deduplicateReferences")){
+                     config.setDeduplicateReferences(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("deduplicateClassifications")){
+                     config.setDeduplicateClassifications(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("moveNewTaxaToDefaultClassification")){
+                     config.setMoveNewTaxaToDefaultClassification(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("mapUnitIdToCatalogNumber")){
+                     config.setMapUnitIdToCatalogNumber(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("mapUnitIdToAccessionNumber")){
+                     config.setMapUnitIdToAccessionNumber(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("mapUnitIdToBarcode")){
+                     config.setMapUnitIdToBarcode(Boolean.valueOf(valueString));
+                 }else if (keyString.equals("overwriteExistingSpecimens")){
+                     config.setOverwriteExistingSpecimens(Boolean.valueOf(valueString));
+                 }else{
+                     logger.debug("This key of the abcd configurator needs to be added to the transformer: " + keyString);
+                 }
+
+            }
+        }
+        return config;
+
+
+
+    }
+
+
 
 
 
index b84f9c9155d9b2aab794120659ca711eb94b4d09..60a9018c3040580e38152dac827ff5f1fd0c7858 100644 (file)
@@ -280,9 +280,9 @@ public class CdmStore {
 
     }
 
-    private CdmStore(ICdmRepository applicationController,
+    private CdmStore(ICdmRepository repository,
             ICdmSource cdmSource) {
-        CdmApplicationState.setCurrentAppConfig(applicationController);
+        CdmApplicationState.setCurrentAppConfig(repository);
         CdmApplicationState.setCurrentDataChangeService(new CdmUIDataChangeService());
         this.cdmSource = cdmSource;
         isConnected = true;
index 6fc530d1c8c4aa86a78630c23fd255e1a6f521ce..de911db88727f9c59882fbc148533f5124cffb65 100644 (file)
@@ -106,6 +106,7 @@ public class SearchManager {
        }
 
        public List<AgentBase> findAgents(IIdentifiableEntityServiceConfigurator configurator){
+
                if(checkLargeResult(CdmStore.getService(IAgentService.class).countByTitle(configurator))){
                        List<AgentBase> records = CdmStore.getService(IAgentService.class).findByTitle(configurator).getRecords();
                        addUuidSearchResults(records, configurator, IAgentService.class);
@@ -124,7 +125,7 @@ public class SearchManager {
         String titleSearchString = configurator.getTitleSearchString();
                try {
                    UUID uuid = UUID.fromString(titleSearchString);
-                   T foundRecord = CdmStore.getService(service).load(uuid, configurator.getPropertyPaths());
+                   T foundRecord = (T) CdmStore.getService(service).load(uuid, configurator.getPropertyPaths());
                    if(foundRecord!=null){
                        records.add(foundRecord);
                    }
index a8addd126269acda91dc7a8d506afe851977ca0d..dc43e8d1c0bad0b2246236ae66099684eb150bfd 100644 (file)
@@ -40,10 +40,17 @@ public class AuthenticatedUserBar extends WorkbenchWindowControlContribution imp
         CdmStore.getLoginManager().addObserver(this);
     }
 
+
+
+    @Override
+    public boolean isDynamic() {
+        return true;
+    }
+
     /** {@inheritDoc} */
     @Override
     protected Control createControl(Composite parent) {
-
+        parent.getParent().setRedraw(true);
         label_authenticatedUser = new Label(parent,  SWT.NULL);
 
         update(null, null);
@@ -68,6 +75,7 @@ public class AuthenticatedUserBar extends WorkbenchWindowControlContribution imp
         }
 
         label_authenticatedUser.setText(text);
+        label_authenticatedUser.setRedraw(true);
     }
 
     /** {@inheritDoc} */
index 39a38d226ffc3b2f5852de54e77874b953b0ed7d..b1ee9b2a9a6beb74c9442afc3c8abd422a3fa595 100755 (executable)
@@ -19,6 +19,8 @@ import org.eclipse.ui.forms.events.IExpansionListener;
 import org.eclipse.ui.forms.widgets.FormToolkit;
 import org.eclipse.ui.forms.widgets.Section;
 
+import eu.etaxonomy.taxeditor.l10n.Messages;
+
 /**
  * @author pplitzner
  * @date Feb 16, 2015
@@ -49,7 +51,7 @@ public class ConfiguratorComposite extends Composite implements IExpansionListen
         sctnConfigure.addExpansionListener(this);
         sctnConfigure.setBackground(getBackground());
         toolkit.paintBordersFor(sctnConfigure);
-        sctnConfigure.setText("Configure");
+        sctnConfigure.setText(Messages.ConfiguratorComposite_CONFIGURE);
 
 
     }
index 5dcbed3c58caa68db5fcff666daabf1acb40474c..000bf40a903f70618b5e8ba0e248543cc2909af2 100755 (executable)
@@ -26,7 +26,7 @@ import org.eclipse.swt.widgets.Listener;
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.wb.swt.ResourceManager;
 
-import eu.etaxonomy.cdm.api.service.config.SetSecundumForSubtreeConfigurator;
+import eu.etaxonomy.cdm.io.common.SetSecundumForSubtreeConfigurator;
 import eu.etaxonomy.cdm.model.reference.Reference;
 import eu.etaxonomy.taxeditor.l10n.Messages;
 import eu.etaxonomy.taxeditor.ui.dialog.selection.SelectionDialogFactory;
index a8186ca2a144ba2824c545b2cecb2e6731674392..5c2d6f553289976a5725e84c76600eda3c288cb6 100755 (executable)
@@ -12,7 +12,7 @@ import org.eclipse.jface.wizard.Wizard;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.widgets.Shell;
 
-import eu.etaxonomy.cdm.api.service.config.SetSecundumForSubtreeConfigurator;
+import eu.etaxonomy.cdm.io.common.SetSecundumForSubtreeConfigurator;
 import eu.etaxonomy.cdm.model.reference.Reference;
 
 /**
index 53426590b4eebc22ffdbaebd1ebb56c5379dd304..41a673982b35902833d6f5c1346ca2bc6025138b 100644 (file)
@@ -46,9 +46,7 @@ public class DeleteConfiguratorDialog extends MessageDialog{
 
     public DeleteConfiguratorDialog(DeleteConfiguratorBase configurator, Shell parentShell, String dialogTitle,
             Image dialogTitleImage, String dialogMessage, int dialogImageType, String[] dialogButtonLabels, int defaultIndex) {
-        super(parentShell, dialogTitle, dialogTitleImage, dialogMessage, dialogImageType, dialogButtonLabels, defaultIndex);
-        this.configurator = configurator;
-        this.fromBulkEditor = false;
+        this(configurator, parentShell, dialogTitle, dialogTitleImage, dialogMessage, dialogImageType, dialogButtonLabels, defaultIndex, false);
     }
 
     @Override
@@ -65,11 +63,7 @@ public class DeleteConfiguratorDialog extends MessageDialog{
         }  else if(configurator instanceof NameDeletionConfigurator){
             composite.addConfiguratorComposite(new DeleteNameConfiguratorComposite((NameDeletionConfigurator) configurator, composite.getSectionConfigure(), SWT.NONE));
         }  else if(configurator instanceof MediaDeletionConfigurator){
-            if (!fromBulkEditor){
-                composite.addConfiguratorComposite(new DeleteMediaConfiguratorComposite((MediaDeletionConfigurator) configurator, composite.getSectionConfigure(), SWT.NONE, fromBulkEditor));
-            }else{
-                composite.addConfiguratorComposite(new DeleteMediaConfiguratorComposite((MediaDeletionConfigurator) configurator, composite.getSectionConfigure(), SWT.NONE));
-            }
+            composite.addConfiguratorComposite(new DeleteMediaConfiguratorComposite((MediaDeletionConfigurator) configurator, composite.getSectionConfigure(), SWT.NONE, fromBulkEditor));
         }
 
 
index 6b5c3cd1dd027c2c70c72ba175f0df918c7570bf..f6ad7ee75ca18033d66cd64af0d8e79429917a16 100644 (file)
@@ -15,14 +15,11 @@ import org.eclipse.jface.databinding.swt.WidgetProperties;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.DisposeEvent;
 import org.eclipse.swt.events.DisposeListener;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.layout.RowLayout;
 import org.eclipse.swt.widgets.Button;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Display;
 import org.eclipse.swt.widgets.Event;
-import org.eclipse.swt.widgets.Listener;
 import org.eclipse.ui.forms.widgets.FormToolkit;
 
 import eu.etaxonomy.cdm.api.service.config.MediaDeletionConfigurator;
@@ -40,48 +37,12 @@ public class DeleteMediaConfiguratorComposite extends Composite {
     private final MediaDeletionConfigurator configurator;
     private final Button btnDeleteIfUsedInTaxonDescription;
     private final Button btnDeleteIfUsedInSpecimenDescription;
-    private final Button btnRemoveFromImageGallery;
-    private final boolean isInBulkEditor;
+    private Button btnRemoveFromImageGallery;
 
 
-    /**
-     * Create the composite.
-     * @param parent
-     * @param style
-     */
-    public DeleteMediaConfiguratorComposite(MediaDeletionConfigurator configurator, Composite parent, int style) {
-        super(parent, style);
-        this.configurator = configurator;
-        this.isInBulkEditor = false;
-        addDisposeListener(new DisposeListener() {
-            @Override
-            public void widgetDisposed(DisposeEvent e) {
-                toolkit.dispose();
-            }
-        });
-        toolkit.paintBordersFor(this);
-        setLayout(new RowLayout(SWT.VERTICAL));
-        setBackground(getBackground());
-
-        btnRemoveFromImageGallery = null;
-
-        btnDeleteIfUsedInTaxonDescription = new Button(this, SWT.CHECK);
-        btnDeleteIfUsedInTaxonDescription.setText(Messages.DeleteConfiguration_media_deleteIfUsedInTaxonDescription);
-        btnDeleteIfUsedInTaxonDescription.setSelection(false);
-
-        btnDeleteIfUsedInSpecimenDescription = new Button(this, SWT.CHECK);
-        btnDeleteIfUsedInSpecimenDescription.setText(Messages.DeleteConfiguration_media_deleteIfUsedInSpecimenDescription);
-        btnDeleteIfUsedInSpecimenDescription.setSelection(false);
-
-
-        m_bindingContext = initDataBindings();
-
-    }
-
     public DeleteMediaConfiguratorComposite(MediaDeletionConfigurator configurator, Composite parent, int style, boolean inBulkEditor) {
         super(parent, style);
         this.configurator = configurator;
-        this.isInBulkEditor = inBulkEditor;
         addDisposeListener(new DisposeListener() {
             @Override
             public void widgetDisposed(DisposeEvent e) {
@@ -89,56 +50,37 @@ public class DeleteMediaConfiguratorComposite extends Composite {
             }
         });
         toolkit.paintBordersFor(this);
-        setLayout(new GridLayout());
+        setLayout(new RowLayout(SWT.VERTICAL));
         setBackground(getBackground());
 
-
-
-
-        if (!inBulkEditor){
-            btnRemoveFromImageGallery = new Button(this, SWT.RADIO);
-            btnRemoveFromImageGallery.setText(Messages.DeleteConfiguration_media_removeFromGallery);
-
-            btnRemoveFromImageGallery.setSelection(true);
-            btnRemoveFromImageGallery.setVisible(true);
-            btnDeleteIfUsedInTaxonDescription = new Button(this, SWT.RADIO);
-            btnDeleteIfUsedInTaxonDescription.setSelection(false);
-            btnDeleteIfUsedInTaxonDescription.setVisible(true);
-            btnDeleteIfUsedInTaxonDescription.setText(Messages.DeleteConfiguration_media_delete);
-            btnDeleteIfUsedInSpecimenDescription = new Button(this, SWT.CHECK);
-            btnDeleteIfUsedInSpecimenDescription.setText(Messages.DeleteConfiguration_media_deleteIfUsedInSpecimenDescription);
-            btnDeleteIfUsedInSpecimenDescription.setVisible(false);
-            btnDeleteIfUsedInTaxonDescription.addListener(SWT.Selection, new Listener() {
-                @Override
-             public void handleEvent(Event e) {
-                    Button b = (Button) e.widget;
-                    GridData data = (GridData)  btnDeleteIfUsedInTaxonDescription.getLayoutData();
-                    data.exclude = b.getSelection();
-                    btnDeleteIfUsedInSpecimenDescription.setVisible(data.exclude);
-
-                }
-         });
-
-
-
-
-        } else{
-            btnRemoveFromImageGallery =null;
+        if (inBulkEditor){
             btnDeleteIfUsedInTaxonDescription = new Button(this, SWT.CHECK);
-            btnDeleteIfUsedInTaxonDescription.setSelection(false);
             btnDeleteIfUsedInTaxonDescription.setText(Messages.DeleteConfiguration_media_deleteIfUsedInTaxonDescription);
-            btnDeleteIfUsedInTaxonDescription.setVisible(true);
-
-            btnDeleteIfUsedInSpecimenDescription = new Button(this, SWT.CHECK);
-            btnDeleteIfUsedInSpecimenDescription.setText(Messages.DeleteConfiguration_media_deleteIfUsedInSpecimenDescription);
-            btnDeleteIfUsedInSpecimenDescription.setVisible(true);
         }
+        else {
+            btnDeleteIfUsedInTaxonDescription = new Button(this, SWT.RADIO);
+            btnDeleteIfUsedInTaxonDescription.setText(Messages.DeleteConfiguration_media_delete);
 
+            btnRemoveFromImageGallery = new Button(this, SWT.RADIO);
+            btnRemoveFromImageGallery.setText(Messages.DeleteConfiguration_media_removeFromGallery);
+        }
 
+        btnDeleteIfUsedInSpecimenDescription = new Button(this, SWT.CHECK);
+        btnDeleteIfUsedInSpecimenDescription.setText(Messages.DeleteConfiguration_media_deleteIfUsedInSpecimenDescription);
 
+        if(inBulkEditor){
+            btnDeleteIfUsedInSpecimenDescription.setEnabled(true);
+        }
+        else{
+            btnDeleteIfUsedInSpecimenDescription.setEnabled(false);
 
+            btnDeleteIfUsedInTaxonDescription.addListener(SWT.Selection, (Event e) -> {
+                Button b = (Button) e.widget;
+                btnDeleteIfUsedInSpecimenDescription.setEnabled(b.getSelection());
 
-
+            });
+        }
+        btnDeleteIfUsedInTaxonDescription.setSelection(true);
 
         m_bindingContext = initDataBindings();
 
@@ -150,20 +92,17 @@ public class DeleteMediaConfiguratorComposite extends Composite {
         IObservableValue observeSelectionBtnDeleteIfUsedInTaxonDescription = WidgetProperties.selection().observe(btnDeleteIfUsedInTaxonDescription);
         IObservableValue deleteIfUsedInTaxonDescriptionConfiguratorObserveValue = PojoProperties.value("deleteIfUsedInTaxonDescription").observe(configurator);
         bindingContext.bindValue(observeSelectionBtnDeleteIfUsedInTaxonDescription, deleteIfUsedInTaxonDescriptionConfiguratorObserveValue, null, null);
-        if (isInBulkEditor){
-            IObservableValue observeSelectionBtnDeleteIfUsedInSpecimenDescription = WidgetProperties.selection().observe(btnDeleteIfUsedInSpecimenDescription);
-            IObservableValue deleteIfUsedInSpecimenDescriptionConfiguratorObserveValue = PojoProperties.value("deleteIfUsedInSpecimenDescription").observe(configurator);
-            bindingContext.bindValue(observeSelectionBtnDeleteIfUsedInSpecimenDescription, deleteIfUsedInSpecimenDescriptionConfiguratorObserveValue, null, null);
-        }else{
+
+        if(btnRemoveFromImageGallery!=null){
             IObservableValue observeSelectionBtnRemoveFromImageGallery = WidgetProperties.selection().observe(btnRemoveFromImageGallery);
             IObservableValue removeFromImageGalleryConfiguratorObserveValue = PojoProperties.value("onlyRemoveFromGallery").observe(configurator);
             bindingContext.bindValue(observeSelectionBtnRemoveFromImageGallery, removeFromImageGalleryConfiguratorObserveValue, null, null);
-
-            IObservableValue observeSelectionBtnDeleteIfUsedInSpecimenDescription = WidgetProperties.selection().observe(btnDeleteIfUsedInSpecimenDescription);
-            IObservableValue deleteIfUsedInSpecimenDescriptionConfiguratorObserveValue = PojoProperties.value("deleteIfUsedInSpecimenDescription").observe(configurator);
-            bindingContext.bindValue(observeSelectionBtnDeleteIfUsedInSpecimenDescription, deleteIfUsedInSpecimenDescriptionConfiguratorObserveValue, null, null);
         }
 
+        IObservableValue observeSelectionBtnDeleteIfUsedInSpecimenDescription = WidgetProperties.selection().observe(btnDeleteIfUsedInSpecimenDescription);
+        IObservableValue deleteIfUsedInSpecimenDescriptionConfiguratorObserveValue = PojoProperties.value("deleteIfUsedInSpecimenDescription").observe(configurator);
+        bindingContext.bindValue(observeSelectionBtnDeleteIfUsedInSpecimenDescription, deleteIfUsedInSpecimenDescriptionConfiguratorObserveValue, null, null);
+
         return bindingContext;
     }
 
index 9442d18b46b4b9e3593c75892fb083f73de6a85a..fc91147b4934f017eeb9b29643ea31744598c2ae 100644 (file)
@@ -11,6 +11,7 @@ import org.eclipse.swt.widgets.Text;
 
 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.api.service.IReferenceService;
+import eu.etaxonomy.cdm.model.agent.TeamOrPersonBase;
 import eu.etaxonomy.cdm.model.reference.Reference;
 import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
 import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
@@ -20,11 +21,16 @@ import eu.etaxonomy.taxeditor.store.CdmStore;
 public class NomenclaturalReferenceSelectionDialog extends
                ReferenceSelectionDialog {
 
+    private TeamOrPersonBase author;
+    private boolean firstCall = true;
+
        protected NomenclaturalReferenceSelectionDialog(Shell shell,
                        ConversationHolder conversation, String title, boolean multi,
-                       Reference reference, boolean inReference) {
+                       Reference reference, boolean inReference, TeamOrPersonBase author) {
                super(shell, conversation, title, multi, reference);
-               // TODO Auto-generated constructor stub
+               this.author = author;
+               firstCall = true;
+
        }
 
        /* (non-Javadoc)
@@ -37,6 +43,15 @@ public class NomenclaturalReferenceSelectionDialog extends
         String pattern = null;
         if (control != null){
             pattern = ((Text)control).getText();
+
+        }
+        if (firstCall && author != null){
+            pattern = author.getNomenclaturalTitle();
+            if (control!= null){
+                firstCall = false;
+                ((Text)control).setText(pattern);
+            }
+
         }
 
         if (pattern == null || pattern.equals("?")){
@@ -44,6 +59,7 @@ public class NomenclaturalReferenceSelectionDialog extends
         }else{
             model = CdmStore.getService(IReferenceService.class).getUuidAndAbbrevTitleCache(limitOfInitialElements, pattern);
         }
+        System.out.println("2");
        }
 
        /**
@@ -64,9 +80,9 @@ public class NomenclaturalReferenceSelectionDialog extends
         * @return a {@link eu.etaxonomy.cdm.model.reference.ReferenceBase} object.
         */
 
-       public static Reference select(Shell shell, ConversationHolder conversation, Reference reference) {
+       public static Reference select(Shell shell, ConversationHolder conversation, Reference reference, TeamOrPersonBase author) {
                NomenclaturalReferenceSelectionDialog dialog = new NomenclaturalReferenceSelectionDialog(shell, conversation,
-                               "Choose a reference", isInReference, reference, false);
+                               "Choose a reference", isInReference, reference, false, author);
                return getSelectionFromDialog(dialog);
        }
 
index afaab4762a859aa097d8af8b01c0358074fc4789..17433871a8c5b3f99d0b0720720f80cebf574251 100644 (file)
@@ -33,6 +33,7 @@ public class ReferenceSelectionDialog extends AbstractFilteredCdmResourceSelecti
 
     protected static boolean isInReference = false;
     private Reference currentReference;
+
        /**
         * <p>select</p>
         *
@@ -75,6 +76,8 @@ public class ReferenceSelectionDialog extends AbstractFilteredCdmResourceSelecti
        protected ReferenceSelectionDialog(Shell shell, ConversationHolder conversation, String title, boolean multi, Reference reference) {
                super(shell, conversation, title, multi, ReferenceSelectionDialog.class.getCanonicalName(), null);
                this.currentReference = reference;
+
+
        }
 
 
@@ -93,6 +96,7 @@ public class ReferenceSelectionDialog extends AbstractFilteredCdmResourceSelecti
         super(shell, conversation, title, multi, ReferenceSelectionDialog.class.getCanonicalName(), null);
         this.isInReference = isInReference;
         this.currentReference = reference;
+
     }
 
 
index 9c1c812bf34a3d76ac3ecac95696dddf644b1db8..f63b16680c64d50e22b58ebee8a4d6c51d1cbee7 100644 (file)
@@ -79,7 +79,7 @@ public class SelectionDialogFactory {
                        return (T) TaxonNodeSelectionDialog.select(shell, conversation, null, null, (TaxonNode) currentSelection, ((TaxonNode) currentSelection).getClassification());
                }
                if(clazz.equals(Reference.class) && parentElement instanceof NomenclaturalReferenceDetailElement){
-                       return (T) NomenclaturalReferenceSelectionDialog.select(shell, conversation, (Reference) currentSelection);
+                       return (T) NomenclaturalReferenceSelectionDialog.select(shell, conversation, (Reference) currentSelection, ((NomenclaturalReferenceDetailElement)parentElement).getEntity().getCombinationAuthorship());
                }
                if(clazz.equals(Reference.class)){
                    if (parentElement instanceof ReferenceDetailElement){
index be66a75fa0305a0b638d9e718127b78c28eb813c..1b3902221d338ab9c48432fe1109e80869f29650 100644 (file)
@@ -1681,6 +1681,8 @@ public class CdmFormFactory extends FormToolkit {
         return section;
     }
 
+
+
     public NonViralNameDetailSection createNonViralNameDetailSection(ConversationHolder conversation, ICdmFormElement parentElement, ISelectionProvider selectionProvider, boolean nameChoosable, int style){
         NonViralNameDetailSection section = new NonViralNameDetailSection(this, conversation, parentElement, selectionProvider, nameChoosable, style);
         addAndAdaptSection(parentElement, section);
index de86f8d568eaa2137c043ba2ed3f40200b7301ac..1e28b62af92ffbfa29d1b97847291e4ea9cfc07b 100644 (file)
@@ -1,19 +1,14 @@
 /**
 * Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
 
 package eu.etaxonomy.taxeditor.ui.section.name;
 
-import java.util.Collection;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
 import org.eclipse.jface.wizard.Wizard;
 
 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
@@ -22,8 +17,6 @@ import eu.etaxonomy.cdm.model.common.CdmBase;
 import eu.etaxonomy.cdm.model.name.NameRelationship;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
 import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
-import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
-import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
  * <p>NameRelationshipWizard class.</p>
@@ -32,14 +25,14 @@ import eu.etaxonomy.taxeditor.store.CdmStore;
  * @created Jun 1, 2010
  * @version 1.0
  */
-public class NameRelationshipWizard extends Wizard implements IConversationEnabled, ICdmEntitySessionEnabled{
+public class NameRelationshipWizard extends Wizard implements IConversationEnabled{
 
        private static NameRelationshipDetailSection callingSection;
-       
-       private ICdmEntitySession cdmEntitySession;
+
+       //private ICdmEntitySession cdmEntitySession;
     private ICdmEntitySession previousCdmEntitySession;
     private CdmBase rootElement;
-       
+
        /**
         * <p>Constructor for NameRelationshipWizard.</p>
         *
@@ -48,23 +41,18 @@ public class NameRelationshipWizard extends Wizard implements IConversationEnabl
        public NameRelationshipWizard(NameRelationshipDetailSection callingSection) {
                NameRelationshipWizard.callingSection = callingSection;
                rootElement = callingSection.getEntity();
-               if (CdmStore.isActive()) {
-            previousCdmEntitySession = CdmStore.getCurrentSessionManager().getActiveSession();
-            cdmEntitySession = CdmStore.getCurrentSessionManager().newSession(this, true);
-            cdmEntitySession.bind();
-        }
        }
-               
+
        private NameRelationshipWizardPage page;
 
        /** {@inheritDoc} */
        @Override
        public void addPages() {
-               page = new NameRelationshipWizardPage(callingSection); 
-               
+               page = new NameRelationshipWizardPage(callingSection);
+
                addPage(page);
        }
-       
+
        /* (non-Javadoc)
         * @see org.eclipse.jface.wizard.Wizard#performFinish()
         */
@@ -77,12 +65,7 @@ public class NameRelationshipWizard extends Wizard implements IConversationEnabl
        @Override
     public void dispose() {
         super.dispose();
-        if(cdmEntitySession != null) {
-            cdmEntitySession.dispose();
-        }
-        if(previousCdmEntitySession!=null){
-            previousCdmEntitySession.bind();
-        }
+
     }
 
        /**
@@ -99,25 +82,14 @@ public class NameRelationshipWizard extends Wizard implements IConversationEnabl
         *
         * @return a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
         */
-       public ConversationHolder getConversationHolder() {
+       @Override
+    public ConversationHolder getConversationHolder() {
                return callingSection.getConversationHolder();
        }
 
        /** {@inheritDoc} */
-       public void update(CdmDataChangeMap changeEvents) {}
-
-        @Override
-           public ICdmEntitySession getCdmEntitySession() {
-               return cdmEntitySession;
-           }
-
-           @Override
-           public java.util.Collection<CdmBase> getRootEntities() {
-               return Collections.singleton(rootElement);
-           }
-
-           @Override
-           public Map<Object, List<String>> getPropertyPathsMap() {
-               return null;
-           }
+       @Override
+    public void update(CdmDataChangeMap changeEvents) {}
+
+
 }
index 500f683c56c6f82460c3f831dd7e5276e05950c8..8969c21b5117c2a5c8f4e66111f521d51966eaba 100644 (file)
@@ -108,8 +108,9 @@ public class NonViralNameDetailElement extends
                if(combo_nomenclaturalCode!=null){
                    combo_nomenclaturalCode.setEnabled(false);
                }
-               toggleable_cache.setEnabled(getEntity().isProtectedTitleCache() || getEntity().isProtectedFullTitleCache());
+
                if(toggleable_cache!=null){
+                   toggleable_cache.setEnabled(getEntity().isProtectedTitleCache() || getEntity().isProtectedFullTitleCache());
                    setIrrelevant(toggleable_cache.getState(),
                            Arrays.asList(new Object[] { toggleable_cache, textLsid }));
                }
index 5135b2f4f66363a671c75ec835da2f47f4fe2d67..aea31932297b6b7f34b771b80462ed731ba40356 100644 (file)
@@ -46,7 +46,7 @@ public class ProtologueSection extends AbstractEntityCollectionSection<TaxonName
         * @param conversation a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
         */
        public ProtologueSection(CdmFormFactory cdmFormFactory, ConversationHolder conversation, ICdmFormElement parentElement, int style) {
-               super(cdmFormFactory, conversation, parentElement, "Protologues", style);
+               super(cdmFormFactory, conversation, parentElement, "Protologues / Original Publications", style);
        }
 
        /** {@inheritDoc} */
index 88cca5fd8400f62683c0bece0349f0d87f6a3d67..8b1231cae98f5afef7ff803e1672aa5c7e13161b 100644 (file)
@@ -610,17 +610,11 @@ public class ReferenceDetailElement extends AbstractIdentifiableEntityDetailElem
                Integer referencingObjectsCount = CdmStore.getCommonService().getReferencingObjectsCount(getEntity());
 
                if (referencingObjectsCount > 1){
-                       if (warnForReferencedObjects == null){
-                               warnForReferencedObjects = formFactory.createLabel(formElement, CdmUtils.Nz("The reference is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects"));
-                               warnForReferencedObjects.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
-                               warnForReferencedObjects.setLayout(LayoutConstants.FILL(2, 2));
-                               warnForReferencedObjects.setForeground(Display.getCurrent().getSystemColor(
-                                               SWT.COLOR_RED));
-
-                       }else{
-                               warnForReferencedObjects.setText(CdmUtils.Nz("The reference is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects"));
-                       }
-                       warnForReferencedObjects.setVisible(false);
+                       warnForReferencedObjects = formFactory.createLabel(formElement, CdmUtils.Nz("The reference is referenced by " + referencingObjectsCount+ " objects, if you change it, it is changed for all these objects"));
+                       warnForReferencedObjects.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
+                       warnForReferencedObjects.setLayout(LayoutConstants.FILL(2, 3));
+
+                       warnForReferencedObjects.setForeground(Display.getCurrent().getSystemColor(SWT.COLOR_RED));
                }
            }
        }
index 9a4c7616778eb06829b6fa4aa95ae03ba6a89902..a0c147783acb55058a49ffa47e0a3f0ec61ba649 100644 (file)
@@ -10,6 +10,7 @@
 package eu.etaxonomy.taxeditor.ui.section.reference;
 
 import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
 
 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.model.reference.Reference;
@@ -29,6 +30,7 @@ import eu.etaxonomy.taxeditor.ui.section.AbstractCdmDetailElement;
  */
 public class ReferenceWizardPage extends AbstractCdmEntityWizardPage<Reference> implements IExceptionHandler{
 
+
        /**
         * <p>Constructor for ReferenceBaseWizardPage.</p>
         *
@@ -41,6 +43,13 @@ public class ReferenceWizardPage extends AbstractCdmEntityWizardPage<Reference>
                setTitle("Reference");
        }
 
+       @Override
+    public void createControl(Composite parent) {
+
+           super.createControl(parent);
+
+       }
+
        /*
         * (non-Javadoc)
         * @see eu.etaxonomy.taxeditor.forms.CdmEntityWizardPage#createElement(eu.etaxonomy.taxeditor.forms.ICdmFormElement)
@@ -48,7 +57,6 @@ public class ReferenceWizardPage extends AbstractCdmEntityWizardPage<Reference>
        /** {@inheritDoc} */
        @Override
     public AbstractCdmDetailElement<Reference> createElement(ICdmFormElement rootElement){
-               //TODO: looking for referencing objects
                ReferenceDetailElement referenceElement = formFactory.createReferenceDetailElement(rootElement, SWT.NULL, true);
                referenceElement.addExceptionHandler(this);
                referenceElement.setEntity(entity);
index b76b1ef07cd44411d67465a5071d88c98280d550..82869162bc7a0994701bed0d503d88b4b3c7c489 100644 (file)
@@ -182,10 +182,14 @@ public class EditFromSelectionWizard extends Wizard implements
            IService<CdmBase> service = CdmStore.getService(rootElement);
            if(rootElement.getId()!=0){
                service.merge(rootElement, true);
+
+           }else{
+               rootElement = service.save(rootElement);
            }
            if(previousCdmEntitySession!=null){
-               selectionElement.setEntity(previousCdmEntitySession.load(rootElement, true));
-           }
+            selectionElement.setEntity(previousCdmEntitySession.load(rootElement, true));
+        }
+
                return true;
        }
 
index d88c4f08ca6947d075b9b92dddaeac441ef14274..f89db5ded85ad631452bfabadeae5d7d2e333647 100644 (file)
@@ -16,7 +16,11 @@ import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.jface.action.IMenuManager;
 import org.eclipse.jface.action.IToolBarManager;
 import org.eclipse.jface.viewers.CheckboxTableViewer;
+import org.eclipse.jface.wizard.IWizard;
+import org.eclipse.jface.wizard.WizardDialog;
 import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.widgets.Button;
@@ -29,6 +33,7 @@ import org.eclipse.swt.widgets.Table;
 import org.eclipse.swt.widgets.TableItem;
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.IMemento;
+import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.forms.widgets.FormToolkit;
 import org.eclipse.ui.part.ViewPart;
 import org.eclipse.wb.swt.ResourceManager;
@@ -38,6 +43,7 @@ import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
 import eu.etaxonomy.cdm.ext.occurrence.OccurenceQuery;
 import eu.etaxonomy.cdm.model.taxon.Classification;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
+import eu.etaxonomy.taxeditor.databaseAdmin.wizard.ImportPreferencesWizard;
 import eu.etaxonomy.taxeditor.model.IContextListener;
 import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
 import eu.etaxonomy.taxeditor.model.IPartContentHasFactualData;
@@ -60,14 +66,23 @@ IConversationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, I
 
     protected Collection<T> results = new ArrayList<T>();
 
+    protected boolean updated = false;
+
     protected OccurenceQuery query;
 
     private static ConversationHolder conversationHolder;
 
     private SaveImportedSpecimenAction saveImportedSpecimenAction;
-    
+
     private Text textClassification;
     private Classification classification;
+
+    private Text textReferenceString;
+
+    private Button toggleButton;
+    private boolean state;
+
+    private Button openConfigurator;
     /**
         * @return the classification
         */
@@ -104,29 +119,95 @@ IConversationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, I
      */
     @Override
     public void createPartControl(Composite parent) {
-       final Composite composite = new Composite(parent, SWT.NULL);
-
-               GridLayout gridLayout = new GridLayout();
-               gridLayout.numColumns = 4;
-               composite.setLayout(gridLayout);
-       Label label = new Label(composite, SWT.NONE);
+//     final Composite composite = new Composite(parent, SWT.NONE);
+//
+//             GridLayout gridLayout = new GridLayout();
+//             gridLayout.numColumns = 3;
+//             composite.setLayout(gridLayout);
+//             composite.setLayoutData(new GridData(SWT.FILL, SWT.TOP, true, false));
+        Composite composite = new Composite(parent, SWT.NONE);
+        composite.setLayout(new GridLayout(2, false));
+
+        Composite composite_1 = new Composite(composite, SWT.NONE);
+        GridData gd_composite_1 = new GridData(SWT.LEFT, SWT.TOP, false, false, 1, 1);
+        gd_composite_1.widthHint = 280;
+        composite_1.setLayoutData(gd_composite_1);
+        composite_1.setLayout(new GridLayout(3, false));
+
+       Label label = new Label(composite_1, SWT.TOP);
                label.setText("Classification");
-               textClassification = new Text(composite, SWT.NONE);
+               label.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 3, 1));
+               textClassification = new Text(composite_1, SWT.BORDER);
                textClassification.setEnabled(false);
-               textClassification.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
-               btnBrowseClassification = new Button(composite, SWT.NONE);
+               GridData gd_textClassification = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
+               gd_textClassification.widthHint = 118;
+               textClassification.setLayoutData(new GridData(SWT.FILL, SWT.LEFT, true, true));
+               btnBrowseClassification = new Button(composite_1, SWT.NONE);
                btnBrowseClassification.setImage(ResourceManager.getPluginImage("eu.etaxonomy.taxeditor.store", "icons/open.gif"));
                btnBrowseClassification.addListener(SWT.Selection, this);
-               btnClear = new Button(composite, SWT.NONE);
+               btnClear = new Button(composite_1, SWT.NONE);
                btnClear.setImage(ResourceManager.getPluginImage("eu.etaxonomy.taxeditor.store", "icons/trash.gif"));
                btnClear.addListener(SWT.Selection, this);
-
-        CheckboxTableViewer checkboxTableViewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.FULL_SELECTION);
-        table = checkboxTableViewer.getTable();
-        toolkit.paintBordersFor(table);
-
-        
-        
+               //source reference
+
+        Label labelRef = new Label(composite_1, SWT.NONE);
+        labelRef.setText("Default import souce reference");
+        labelRef.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 3, 1));
+        textReferenceString = new Text(composite_1, SWT.NONE);
+        textReferenceString.setEnabled(true);
+        GridData gd_textReferenceString = new GridData(SWT.LEFT, SWT.CENTER, true, true, 3, 1);
+        gd_textReferenceString.widthHint = 229;
+        textReferenceString.setLayoutData(gd_textReferenceString);
+
+        //open configuration
+        openConfigurator = new Button(composite_1, SWT.PUSH);
+        openConfigurator.setText("Configuration");
+        new Label(composite_1, SWT.NONE);
+        new Label(composite_1, SWT.NONE);
+        openConfigurator.addSelectionListener(new SelectionAdapter(){
+            @Override
+            public void widgetSelected(SelectionEvent e) {
+
+                IWizard wizard = new ImportPreferencesWizard();
+                WizardDialog dialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), wizard);
+                dialog.open();
+            }
+        });
+
+      //checkbox table for result
+        Composite composite_2 = new Composite(composite, SWT.NONE);
+        GridData gd_composite_2 = new GridData(SWT.LEFT, SWT.TOP, true, true, 1, 1);
+        gd_composite_2.heightHint = 454;
+        gd_composite_2.widthHint = 403;
+        composite_2.setLayoutData(gd_composite_2);
+       composite_2.setLayout(new GridLayout(2, false));
+
+
+       CheckboxTableViewer checkboxTableViewer = CheckboxTableViewer.newCheckList(composite_2, SWT.BORDER | SWT.FULL_SELECTION);
+
+
+       table = checkboxTableViewer.getTable();
+       GridData gd_table = new GridData(SWT.LEFT, SWT.TOP, true, true, 1, 1);
+       gd_table.heightHint = 444;
+       gd_table.widthHint = 312;
+       table.setLayoutData(gd_table);
+       toolkit.paintBordersFor(table);
+       //toggle button
+       toggleButton = new Button(composite_2, SWT.PUSH);
+       GridData gd_toggleButton = new GridData(SWT.LEFT, SWT.TOP, false, false, 1, 1);
+       gd_toggleButton.widthHint = 56;
+       toggleButton.setLayoutData(gd_toggleButton);
+       toggleButton.setText("Toggle");
+       toggleButton.addSelectionListener(new SelectionAdapter(){
+           @Override
+           public void widgetSelected(SelectionEvent e) {
+               state = state ? false : true;
+               for (TableItem item: getTable().getItems()){
+                       item.setChecked(state);
+               }
+
+           }
+       });
         createActions();
         initializeToolBar();
         initializeMenu();
@@ -170,6 +251,7 @@ IConversationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, I
      */
     public void setResults(Collection<T> results) {
         this.results = results;
+        updated=false;
     }
 
     /* (non-Javadoc)
@@ -190,11 +272,17 @@ IConversationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, I
     }
 
     protected void refresh(){
-       // getTable().removeAll();
-        for(T item:results){
-            TableItem tableItem = new TableItem(getTable(), SWT.NONE);
-            tableItem.setText(getTextForTableItem(item));
-            tableItem.setData(item);
+
+        if (!updated){
+            if (getTable() != null){
+                getTable().removeAll();
+            }
+            for(T item:results){
+                TableItem tableItem = new TableItem(getTable(), SWT.NONE);
+                tableItem.setText(getTextForTableItem(item));
+                tableItem.setData(item);
+            }
+            updated = true;
         }
     }
 
@@ -292,4 +380,12 @@ IConversationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, I
                textClassification.setText("");
            }
        }
+
+    /**
+     * @return
+     */
+    public String getReferenceString() {
+
+        return textReferenceString.getText();
+    }
 }
index 84b3ec1d4f12caa58bcef09192e9412fadde65b7..8470eeb81ce27106a1439fcb7704036d3bcf05d8 100644 (file)
@@ -9,26 +9,13 @@
 package eu.etaxonomy.taxeditor.view.dataimport;
 
 import java.io.IOException;
-import java.io.InputStream;
 import java.net.URISyntaxException;
-import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Comparator;
-import java.util.HashSet;
-import java.util.Set;
 
 import org.apache.http.client.ClientProtocolException;
-import org.eclipse.core.runtime.jobs.Job;
 
-import eu.etaxonomy.cdm.ext.occurrence.bioCase.BioCaseQueryServiceWrapper;
-import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifDataSetProtocol;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifQueryServiceWrapper;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifResponse;
-import eu.etaxonomy.cdm.io.common.CdmDefaultImport;
-import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE;
-import eu.etaxonomy.cdm.io.dwca.in.DwcaImportConfigurator;
-import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
-import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
  * @author pplitzner
@@ -62,18 +49,18 @@ public class GbifResponseImportView extends DataImportView<GbifResponse> {
         try{
             //Collection<GbifResponse> results = new GbifQueryServiceWrapper().query(query);
             //setResults(results);
-            
+
            // String errorMessage = "Could not execute query " + query;
 
        //     Collection<SpecimenOrObservationBase<?>> results = new ArrayList<SpecimenOrObservationBase<?>>();
                 Collection<GbifResponse> results = new GbifQueryServiceWrapper().query(query);
-                               
+
                 setResults(results);
-               
-               
-//               
+
+
+//
                // results = repo.getUnits();
-                
+
             } catch (ClientProtocolException e) {
                 logger.error(errorMessage, e);
             } catch (IOException e) {
@@ -96,10 +83,10 @@ public class GbifResponseImportView extends DataImportView<GbifResponse> {
 //        }
 
   //  }
-    
-   
-    
 
-       
+
+
+
+
 
 }
index c1765239407cccc4728af3fcf62d54dbb8c0604c..ddfde606d6da626daa797cab3cbf83712c432701 100644 (file)
@@ -1,6 +1,5 @@
 package eu.etaxonomy.taxeditor.view.dataimport;
 
-import java.io.IOException;
 import java.net.URI;
 import java.util.ArrayList;
 import java.util.Collection;
@@ -10,7 +9,6 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
-import org.apache.http.client.ClientProtocolException;
 import org.apache.log4j.Logger;
 import org.eclipse.core.runtime.jobs.Job;
 import org.eclipse.jface.action.Action;
@@ -23,13 +21,14 @@ import org.eclipse.ui.PlatformUI;
 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.api.service.ITermService;
 import eu.etaxonomy.cdm.ext.occurrence.OccurenceQuery;
+import eu.etaxonomy.cdm.ext.occurrence.bioCase.BioCaseResponse;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.DataSetResponse;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifDataSetProtocol;
-import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifQueryServiceWrapper;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifResponse;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator;
 import eu.etaxonomy.cdm.io.specimen.gbif.in.GbifImportConfigurator;
 import eu.etaxonomy.cdm.model.common.DefinedTermBase;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
 public class SaveImportedSpecimenAction extends Action {
@@ -49,6 +48,7 @@ public class SaveImportedSpecimenAction extends Action {
             DataImportView<?> dataImportView = (DataImportView<?>)activePart;
             Table table = dataImportView.getTable();
             Collection<GbifResponse> checkedResults = new HashSet<GbifResponse>();
+            Collection<BioCaseResponse> checkedAbcdResults = new HashSet<BioCaseResponse>();
             Object data;
             Set<String[]> unitIdsGbif = new HashSet<String[]>();
             Set<String[]> unitIdsBioCase = new HashSet<String[]>();
@@ -61,6 +61,9 @@ public class SaveImportedSpecimenAction extends Action {
                         if(data instanceof GbifResponse){
                                 checkedResults.add((GbifResponse)item.getData());
                         }
+                        if(data instanceof BioCaseResponse){
+                            checkedAbcdResults.add((BioCaseResponse)data);
+                     }
                 }
             }
             String[] tripleId ;
@@ -79,56 +82,109 @@ public class SaveImportedSpecimenAction extends Action {
                        }
                 }
                 Collections.sort(biocaseResponses, getComparator());
-                URI dataSetUri = null;
-                Abcd206ImportConfigurator configuratorAbcd;
 
+                Abcd206ImportConfigurator configuratorAbcd;
                 List<Abcd206ImportConfigurator> abcdConfigurators = new ArrayList<Abcd206ImportConfigurator>();
                 DataSetResponse dataSetResponse;
                 OccurenceQuery bioCaseOccurrenceQuery = null;
-                for (GbifResponse response: biocaseResponses){
-                       try {
-                                               dataSetResponse = new GbifQueryServiceWrapper().queryOriginalDataSet(response);
-                                               dataSetUri = dataSetResponse.getEndpoint();
-                                       } catch (ClientProtocolException e) {
-                                               // TODO Auto-generated catch block
-                                               e.printStackTrace();
-                                       } catch (IOException e) {
-                                               // TODO Auto-generated catch block
-                                               e.printStackTrace();
-                                       }
-                       if (!response.getDataSetUri().equals(dataSetUri)){
-                               configuratorAbcd = Abcd206ImportConfigurator.NewInstance(dataSetUri, null, false);
-                               configuratorAbcd.addMediaAsMediaSpecimen(true);
-                               configuratorAbcd.setIgnoreAuthorship(true);
-                               configuratorAbcd.setMoveNewTaxaToDefaultClassification(false);
-                               if (configuratorAbcd != null){
-                                       abcdConfigurators.add(configuratorAbcd);
-                               }
-                               unitIdsBioCase = new HashSet<String[]>();
-                               bioCaseOccurrenceQuery = new OccurenceQuery(unitIdsBioCase);
-                               configuratorAbcd.setOccurenceQuery(bioCaseOccurrenceQuery);
-                               if (dataImportView.getClassification() != null){
-                                       configuratorAbcd.setClassificationUuid(dataImportView.getClassification().getUuid());
-                               }
+                URI dataSetUri = null;
+                for (BioCaseResponse response:checkedAbcdResults){
+
+                    if (!response.getDataSetUri().equals(dataSetUri)){
+                        dataSetUri = response.getDataSetUri();
+
+                        configuratorAbcd = PreferencesUtil.getAbcdImportConfigurationPreference(false);
+                        configuratorAbcd.setSourceUri(dataSetUri);
+//                        configuratorAbcd.addMediaAsMediaSpecimen(true);
+//                        configuratorAbcd.setIgnoreAuthorship(true);
+//                        configuratorAbcd.setMoveNewTaxaToDefaultClassification(false);
+
+                        unitIdsBioCase = new HashSet<String[]>();
+                        bioCaseOccurrenceQuery = new OccurenceQuery(unitIdsBioCase);
+                        configuratorAbcd.setOccurenceQuery(bioCaseOccurrenceQuery);
+                       // configuratorAbcd.setGetSiblings(true);
+                        if (dataImportView.getClassification() != null){
+                            configuratorAbcd.setClassificationUuid(dataImportView.getClassification().getUuid());
+                        }
+                        if (dataImportView.getReferenceString() != null){
+                            configuratorAbcd.setSourceReferenceTitle(dataImportView.getReferenceString());
+                        }
+                        abcdConfigurators.add(configuratorAbcd);
+
+                    }
+                    tripleId = response.getTripleID();
+                    unitIdsBioCase.add(tripleId);
+
 
-                       }
-                       tripleId = response.getTripleID();
-                       unitIdsBioCase.add(tripleId);
                 }
 
-                OccurenceQuery query = new OccurenceQuery(unitIdsGbif);
-                GbifImportConfigurator configurator = GbifImportConfigurator.newInstance(query);
-                configurator.setSourceReferenceTitle("Import Gbif data");
+
+//                if (!unitIdsBioCase.isEmpty()){
+//                    configuratorAbcd = Abcd206ImportConfigurator.NewInstance(dataSetUri, null, false);
+//                    configuratorAbcd.addMediaAsMediaSpecimen(true);
+//                    configuratorAbcd.setIgnoreAuthorship(true);
+//                    configuratorAbcd.setMoveNewTaxaToDefaultClassification(false);
+//                    if (configuratorAbcd != null){
+//                        abcdConfigurators.add(configuratorAbcd);
+//                    }
+////                    unitIdsBioCase = new HashSet<String[]>();
+//                    bioCaseOccurrenceQuery = new OccurenceQuery(unitIdsBioCase);
+//                    configuratorAbcd.setOccurenceQuery(bioCaseOccurrenceQuery);
+//                    configuratorAbcd.setGetSiblings(true);
+//                    if (dataImportView.getClassification() != null){
+//                        configuratorAbcd.setClassificationUuid(dataImportView.getClassification().getUuid());
+//                    }
+//                }
+
+//                for (GbifResponse response: biocaseResponses){
+//                     try {
+//                                             dataSetResponse = new GbifQueryServiceWrapper().queryOriginalDataSet(response);
+//                                             dataSetUri = dataSetResponse.getEndpoint();
+//                                     } catch (ClientProtocolException e) {
+//                                             // TODO Auto-generated catch block
+//                                             e.printStackTrace();
+//                                     } catch (IOException e) {
+//                                             // TODO Auto-generated catch block
+//                                             e.printStackTrace();
+//                                     }
+//                     if (!response.getDataSetUri().equals(dataSetUri)){
+//                             configuratorAbcd = Abcd206ImportConfigurator.NewInstance(dataSetUri, null, false);
+//                             configuratorAbcd.addMediaAsMediaSpecimen(true);
+//                             configuratorAbcd.setIgnoreAuthorship(true);
+//                             configuratorAbcd.setMoveNewTaxaToDefaultClassification(false);
+//                             if (configuratorAbcd != null){
+//                                     abcdConfigurators.add(configuratorAbcd);
+//                             }
+//                             unitIdsBioCase = new HashSet<String[]>();
+//                             bioCaseOccurrenceQuery = new OccurenceQuery(unitIdsBioCase);
+//                             configuratorAbcd.setOccurenceQuery(bioCaseOccurrenceQuery);
+//                             configuratorAbcd.setGetSiblings(true);
+//                             if (dataImportView.getClassification() != null){
+//                                     configuratorAbcd.setClassificationUuid(dataImportView.getClassification().getUuid());
+//                             }
+//
+//                     }
+//                     tripleId = response.getTripleID();
+//                     unitIdsBioCase.add(tripleId);
+//                }
+
 
 
 
                 //  configurator.setQuery(query);
+                if (!checkedAbcdResults.isEmpty()){
+                    Job bioCaseJob = CdmStore.getImportManager().createIOServiceJob(abcdConfigurators);
+                    CdmStore.getImportManager().run(bioCaseJob);
+                }
 
-               Job bioCaseJob = CdmStore.getImportManager().createIOServiceJob(abcdConfigurators);
-               CdmStore.getImportManager().run(bioCaseJob);
+               if (!unitIdsGbif.isEmpty()){
+                   OccurenceQuery query = new OccurenceQuery(unitIdsGbif);
+                   GbifImportConfigurator configurator = GbifImportConfigurator.newInstance(query);
+                   configurator.setSourceReferenceTitle("Import Gbif data");
 
-               Job gbifJob = CdmStore.getImportManager().createIOServiceJob(configurator);
-               CdmStore.getImportManager().run(gbifJob);
+                   Job gbifJob = CdmStore.getImportManager().createIOServiceJob(configurator);
+                   CdmStore.getImportManager().run(gbifJob);
+               }
 
 
 
old mode 100644 (file)
new mode 100755 (executable)
index d5de520..151a158
@@ -19,12 +19,14 @@ import org.w3c.dom.Element;
 import org.w3c.dom.NodeList;
 
 import eu.etaxonomy.cdm.ext.occurrence.bioCase.BioCaseQueryServiceWrapper;
+import eu.etaxonomy.cdm.ext.occurrence.bioCase.BioCaseResponse;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206DataHolder;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportParser;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportState;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206XMLFieldGetter;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.AbcdParseUtility;
+import eu.etaxonomy.cdm.io.specimen.abcd206.in.Identification;
 import eu.etaxonomy.cdm.io.specimen.abcd206.in.UnitAssociationWrapper;
 
 /**
@@ -32,7 +34,7 @@ import eu.etaxonomy.cdm.io.specimen.abcd206.in.UnitAssociationWrapper;
  * @date Sep 3, 2014
  *
  */
-public class SpecimenImportView extends DataImportView<Abcd206DataHolder> {
+public class SpecimenImportView extends DataImportView<BioCaseResponse> {
 
     public static final String ID = "eu.etaxonomy.taxeditor.view.dataimport.SpecimenImportView"; //$NON-NLS-1$
 
@@ -52,9 +54,18 @@ public class SpecimenImportView extends DataImportView<Abcd206DataHolder> {
      * @see eu.etaxonomy.taxeditor.view.dataimport.DataImportView#getTextForTableItem(java.lang.Object)
      */
     @Override
-    protected String getTextForTableItem(Abcd206DataHolder item) {
-        //TODO: define a suitable toString method
-        return item.toString();
+    protected String getTextForTableItem(BioCaseResponse item) {
+        //TODO: could be defined in user preferences...
+        String name = null;
+        if(!(((Abcd206DataHolder)item.getAbcdDataHolder()).getIdentificationList() == null) && !((Abcd206DataHolder)item.getAbcdDataHolder()).getIdentificationList().isEmpty()){
+           Identification identification =  ((Abcd206DataHolder)item.getAbcdDataHolder()).getIdentificationList().iterator().next();
+           name = identification.getScientificName();
+        }
+        if (name != null){
+            return name +" - "+((Abcd206DataHolder)item.getAbcdDataHolder()).getCollectionCode() + " - "+ ((Abcd206DataHolder)item.getAbcdDataHolder()).getUnitID() + " - "+ ((Abcd206DataHolder)item.getAbcdDataHolder()).getKindOfUnit();
+        }else {
+            return ((Abcd206DataHolder)item.getAbcdDataHolder()).getCollectionCode() + " - "+ ((Abcd206DataHolder)item.getAbcdDataHolder()).getUnitID() + " - "+ ((Abcd206DataHolder)item.getAbcdDataHolder()).getKindOfUnit();
+        }
     }
 
     /* (non-Javadoc)
@@ -64,7 +75,7 @@ public class SpecimenImportView extends DataImportView<Abcd206DataHolder> {
     public void query() {
         String errorMessage = "Could not execute query " + query;
 
-        Collection<Abcd206DataHolder> results = new ArrayList<Abcd206DataHolder>();
+        Collection<BioCaseResponse> results = new ArrayList<BioCaseResponse>();
         try {
             //FIXME move ABCD import to cdmlib -> this will also get rid of the transient services
             InputStream resultStream;
@@ -86,11 +97,22 @@ public class SpecimenImportView extends DataImportView<Abcd206DataHolder> {
             Abcd206XMLFieldGetter abcdFieldGetter = new Abcd206XMLFieldGetter(dataHolder, unitAssociationWrapper.getPrefix());
             Abcd206ImportState state = new Abcd206ImportState(configurator);
             state.setDataHolder(dataHolder);
-            for (int i = 0; i <unitsList.getLength(); i++){
-                Element item = (Element) unitsList.item(i);
-                //dataHolder = new Abcd206DataHolder();
-                Abcd206ImportParser.setUnitPropertiesXML(item, abcdFieldGetter, state);
-                results.add(dataHolder);
+            BioCaseResponse response = null;
+            if (unitsList != null){
+                for (int i = 0; i <unitsList.getLength(); i++){
+                    Element item = (Element) unitsList.item(i);
+                    dataHolder = new Abcd206DataHolder();
+                    abcdFieldGetter = new Abcd206XMLFieldGetter(dataHolder, unitAssociationWrapper.getPrefix());
+                    state.setPrefix(unitAssociationWrapper.getPrefix());
+                    Abcd206ImportParser.setUnitPropertiesXML(item, abcdFieldGetter, state);
+                    String[] tripleIdBioCase = new String[3];
+                    tripleIdBioCase[0] =dataHolder.getUnitID();
+                    tripleIdBioCase[1] = dataHolder.getInstitutionCode();
+                    tripleIdBioCase[2] = dataHolder.getCollectionCode();
+
+                    response = new BioCaseResponse(dataHolder, endPoint, tripleIdBioCase );
+                    results.add(response);
+                }
             }
 
 //            Job job = CdmStore.getImportManager().createIOServiceJob(configurator, resultStream, SOURCE_TYPE.INPUTSTREAM);
@@ -107,4 +129,6 @@ public class SpecimenImportView extends DataImportView<Abcd206DataHolder> {
 
     }
 
+
+
 }
diff --git a/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/TestSpecimenImportView.java b/eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/TestSpecimenImportView.java
new file mode 100755 (executable)
index 0000000..980e2a7
--- /dev/null
@@ -0,0 +1,101 @@
+/**
+* Copyright (C) 2017 EDIT
+* European Distributed Institute of Taxonomy
+* http://www.e-taxonomy.eu
+*
+* The contents of this file are subject to the Mozilla Public License Version 1.1
+* See LICENSE.TXT at the top of this package for the full license terms.
+*/
+package eu.etaxonomy.taxeditor.view.dataimport;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.List;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.part.ViewPart;
+
+/**
+ * @author k.luther
+ * @param <T>
+ * @date 02.05.2017
+ *
+ */
+public class TestSpecimenImportView extends ViewPart {
+    private Text text;
+    private Text text_1;
+    public TestSpecimenImportView() {
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public void createPartControl(Composite parent) {
+
+        Composite composite = new Composite(parent, SWT.NONE);
+        composite.setLayout(new GridLayout(2, true));
+
+        Composite composite_1 = new Composite(composite, SWT.NONE);
+        composite_1.setLayout(new GridLayout(3, false));
+
+        Label lblNewLabel = new Label(composite_1, SWT.NONE);
+        lblNewLabel.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 3, 1));
+        lblNewLabel.setBounds(0, 0, 55, 15);
+        lblNewLabel.setText("Classification");
+
+        text = new Text(composite_1, SWT.BORDER);
+        GridData gd_text = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
+        gd_text.widthHint = 118;
+        text.setLayoutData(gd_text);
+
+        Button btnNewButton = new Button(composite_1, SWT.NONE);
+        GridData gd_btnNewButton = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
+        gd_btnNewButton.widthHint = 36;
+        btnNewButton.setLayoutData(gd_btnNewButton);
+        btnNewButton.setText("New Button");
+
+        Button btnNewButton_1 = new Button(composite_1, SWT.NONE);
+        GridData gd_btnNewButton_1 = new GridData(SWT.LEFT, SWT.CENTER, false, false, 1, 1);
+        gd_btnNewButton_1.widthHint = 33;
+        btnNewButton_1.setLayoutData(gd_btnNewButton_1);
+        btnNewButton_1.setBounds(0, 0, 75, 25);
+        btnNewButton_1.setText("New Button");
+
+        Label lblNewLabel_1 = new Label(composite_1, SWT.NONE);
+        lblNewLabel_1.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 3, 1));
+        lblNewLabel_1.setBounds(0, 0, 55, 15);
+        lblNewLabel_1.setText("Default import Source Reference Title");
+
+        text_1 = new Text(composite_1, SWT.BORDER);
+        GridData gd_text_1 = new GridData(SWT.LEFT, SWT.CENTER, false, false, 3, 1);
+        gd_text_1.widthHint = 112;
+        text_1.setLayoutData(gd_text_1);
+        text_1.setBounds(0, 0, 76, 21);
+
+        Button btnNewButton_2 = new Button(composite_1, SWT.NONE);
+        btnNewButton_2.setBounds(0, 0, 75, 25);
+        btnNewButton_2.setText("Configuration");
+        new Label(composite_1, SWT.NONE);
+        new Label(composite_1, SWT.NONE);
+
+        Composite composite_2 = new Composite(composite, SWT.NONE);
+
+        List list = new List(composite_2, SWT.BORDER);
+        list.setBounds(0, 0, 233, 68);
+        // TODO Auto-generated method stub
+
+    }
+
+    /**
+     * {@inheritDoc}
+     */
+    @Override
+    public void setFocus() {
+        // TODO Auto-generated method stub
+
+    }
+}
index 99f8172f6acd3591f967ee5b017e6eb6f07b6a3d..75d24c2baaed179b471cb38f16af203b27358fa6 100644 (file)
@@ -167,7 +167,7 @@ public class CdmDataSourceViewPart extends ViewPart{
        /** {@inheritDoc} */
        @Override
        public void createPartControl(Composite parent) {
-               service = (IWorkbenchSiteProgressService) getSite().getAdapter(IWorkbenchSiteProgressService.class);
+               service = getSite().getAdapter(IWorkbenchSiteProgressService.class);
                contextListener = new ContextListener();
                CdmStore.getContextManager().addContextListener(contextListener);
 
@@ -194,6 +194,7 @@ public class CdmDataSourceViewPart extends ViewPart{
                MenuManager menuMgr = new MenuManager();
                menuMgr.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
                getSite().registerContextMenu(menuMgr, viewer);
+               menuMgr.setRemoveAllWhenShown(true);
 
                Control control = viewer.getControl();
                Menu menu = menuMgr.createContextMenu(control);
index 6559248f4ad79f4081ce31fe6816f74019ab1c70..7ca576b65ad48511ee33eb4914f9e63e38375f94 100644 (file)
@@ -150,6 +150,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
         if(element instanceof FieldUnit){
             return ((FieldUnit) element).getTitleCache();
         }
+
         else if(element instanceof MediaSpecimen){
             text = CdmFormatterFactory.format(element,
                     new FormatKey[]{
@@ -189,6 +190,7 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
             });
         }
         else if(element instanceof IdentifiableEntity){
+
                IdentifiableEntity identifiableEntity = (IdentifiableEntity) element;
                if(identifiableEntity.isProtectedTitleCache()){
                        text = identifiableEntity.getTitleCache();
@@ -495,9 +497,15 @@ public class DerivateLabelProvider extends ColumnLabelProvider {
         if(rootElements!=null){
             Collection<DerivedUnit> derivedUnits = new ArrayList<DerivedUnit>();
             for (SpecimenOrObservationBase specimenOrObservationBase : rootElements) {
-                derivedUnits.addAll(CdmStore.getService(IOccurrenceService.class).getAllChildDerivatives(specimenOrObservationBase.getUuid()));
+                List<DerivedUnit> childUnits = CdmStore.getService(IOccurrenceService.class).getAllChildDerivatives(specimenOrObservationBase.getUuid());
+                if (childUnits != null){
+                    derivedUnits.addAll(childUnits);
+                }
                 if(specimenOrObservationBase.isInstanceOf(DerivedUnit.class)){
-                    derivedUnits.add(HibernateProxyHelper.deproxy(specimenOrObservationBase, DerivedUnit.class));
+                    specimenOrObservationBase = CdmStore.getService(IOccurrenceService.class).load(specimenOrObservationBase.getUuid());
+                    if (specimenOrObservationBase != null){
+                        derivedUnits.add(HibernateProxyHelper.deproxy(specimenOrObservationBase, DerivedUnit.class));
+                    }
                 }
             }
             for (DerivedUnit derivedUnit : derivedUnits) {
index a59785340249a60e5118b7f0c28bea96063a97ab..368c3ff024acd07a79d471a9a85c407a6f76ee6b 100644 (file)
@@ -11,12 +11,9 @@ package eu.etaxonomy.taxeditor.view.sessions;
 import java.text.DecimalFormat;
 import java.util.Collection;
 
-import net.sf.ehcache.Cache;
-import net.sf.ehcache.CacheManager;
-import net.sf.ehcache.statistics.LiveCacheStatistics;
+import javax.annotation.PostConstruct;
+import javax.inject.Inject;
 
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.SelectionAdapter;
 import org.eclipse.swt.events.SelectionEvent;
@@ -29,7 +26,6 @@ import org.eclipse.swt.widgets.Table;
 import org.eclipse.swt.widgets.TableColumn;
 import org.eclipse.swt.widgets.TableItem;
 import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.part.ViewPart;
 import org.eclipse.wb.swt.SWTResourceManager;
 
 import eu.etaxonomy.cdm.api.cache.CdmCacher;
@@ -40,13 +36,16 @@ import eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager;
 import eu.etaxonomy.taxeditor.session.ICdmEntitySessionManagerObserver;
 import eu.etaxonomy.taxeditor.session.NullSession;
 import eu.etaxonomy.taxeditor.store.CdmStore;
+import net.sf.ehcache.Cache;
+import net.sf.ehcache.CacheManager;
+import net.sf.ehcache.statistics.LiveCacheStatistics;
 
 /**
  * @author cmathew
  * @date 16 Feb 2015
  *
  */
-public class SessionsViewPart extends ViewPart implements ICdmEntitySessionManagerObserver {
+public class SessionsViewPart implements ICdmEntitySessionManagerObserver {
 
     public static final String ID = "eu.etaxonomy.taxeditor.view.sessions.SessionsViewPart"; //$NON-NLS-1$
     public static final String OPEN_INSPECT_SESSIONS_DIALOG_ID =  "eu.etaxonomy.taxeditor.store.open.InspectSessionsDialog";
@@ -62,6 +61,7 @@ public class SessionsViewPart extends ViewPart implements ICdmEntitySessionManag
     private Text txtCdmModelOnDisk;
     private Text txtDefaultOnDisk;
 
+    @Inject
     public SessionsViewPart() {
         this.cdmEntitySessionManager = CdmStore.getCurrentSessionManager();
         if(cdmEntitySessionManager != null) {
@@ -73,7 +73,7 @@ public class SessionsViewPart extends ViewPart implements ICdmEntitySessionManag
      * Create contents of the view part.
      * @param parent
      */
-    @Override
+    @PostConstruct
     public void createPartControl(Composite parent) {
         Composite container = new Composite(parent, SWT.NONE);
         container.setLayout(new GridLayout(5, false));
@@ -229,8 +229,6 @@ public class SessionsViewPart extends ViewPart implements ICdmEntitySessionManag
         }
 
         createActions();
-        initializeToolBar();
-        initializeMenu();
     }
 
     /**
@@ -340,23 +338,5 @@ public class SessionsViewPart extends ViewPart implements ICdmEntitySessionManag
         return "";
     }
 
-    /**
-     * Initialize the toolbar.
-     */
-    private void initializeToolBar() {
-        IToolBarManager toolbarManager = getViewSite().getActionBars().getToolBarManager();
-    }
-
-    /**
-     * Initialize the menu.
-     */
-    private void initializeMenu() {
-        IMenuManager menuManager = getViewSite().getActionBars().getMenuManager();
-    }
-
-    @Override
-    public void setFocus() {
-        // Set the focus
-    }
 
 }
index d1145c05ceec2e7e06d6b1e767bfd57514cdd450..cc2002d5e4be7df18f35de8e11c6bb261146ca33 100644 (file)
@@ -12,14 +12,17 @@ import org.eclipse.swt.SWT;
 import org.eclipse.swt.events.DisposeEvent;
 import org.eclipse.swt.events.DisposeListener;
 import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Display;
 import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.forms.widgets.FormToolkit;
 import org.eclipse.ui.forms.widgets.TableWrapData;
 import org.eclipse.ui.forms.widgets.TableWrapLayout;
 
+import eu.etaxonomy.taxeditor.preference.IPreferenceKeys;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
+
 /**
  * @author pplitzner
  * @date 22.05.2014
@@ -28,7 +31,7 @@ import org.eclipse.ui.forms.widgets.TableWrapLayout;
 public class SpecimenProviderSelectionComposite extends Composite {
 
     private final FormToolkit toolkit = new FormToolkit(Display.getCurrent());
-    private final Text txtAccessPoint;
+    private final Combo txtAccessPoint;
     private final Button btnGbif;
     private final Button btnBioCaseProvider;
     private final Label lblAccessPointUrl;
@@ -62,11 +65,11 @@ public class SpecimenProviderSelectionComposite extends Composite {
         btnBioCaseProvider = new Button(this, SWT.RADIO);
         toolkit.adapt(btnBioCaseProvider, true, true);
         btnBioCaseProvider.setText("BioCASE Provider");
-                new Label(this, SWT.NONE);
-
-                txtAccessPoint = new Text(this, SWT.BORDER);
-                txtAccessPoint.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB, TableWrapData.TOP, 1, 1));
-                toolkit.adapt(txtAccessPoint, true, true);
+        txtAccessPoint = new Combo(this, SWT.BORDER);
+        String items[] = PreferencesUtil.getPreferenceStore().getString(IPreferenceKeys.BIOCASE_PROVIDER_LIST).split(";");
+        txtAccessPoint.setItems(items);
+        txtAccessPoint.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB, TableWrapData.TOP, 1, 1));
+        toolkit.adapt(txtAccessPoint, true, true);
 
         lblAccessPointUrl = new Label(this, SWT.NONE);
         lblAccessPointUrl.setLayoutData(new TableWrapData(TableWrapData.LEFT, TableWrapData.MIDDLE, 1, 1));
@@ -81,7 +84,7 @@ public class SpecimenProviderSelectionComposite extends Composite {
     public Button getBtnBioCaseProvider() {
         return btnBioCaseProvider;
     }
-    public Text getTxtAccessPoint() {
+    public Combo getTxtAccessPoint() {
         return txtAccessPoint;
     }
     public Label getLblAccessPointUrl() {
index e456f2981f4765a9b38f4ec88e779e388d125ab1..916402d84050d44aa2fd185756c6b13948cc1bb8 100644 (file)
@@ -10,10 +10,10 @@ package eu.etaxonomy.taxeditor.view.specimenSearch;
 
 import org.eclipse.jface.wizard.IWizard;
 import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Combo;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Event;
 import org.eclipse.swt.widgets.Listener;
-import org.eclipse.swt.widgets.Text;
 
 /**
  * Controller class for handling {@link SpecimenProviderSelectionComposite}
@@ -66,7 +66,7 @@ public class SpecimenProviderSelectionController implements Listener{
 
     private void loadLastState() {
         if(lastAccessPoint!=null){
-            Text text = composite.getTxtAccessPoint();
+            Combo text = composite.getTxtAccessPoint();
             Listener[] listeners = text.getListeners(SWT.Modify);
             for (int i = 0; i < listeners.length; i++) {
                 text.removeListener(SWT.Modify, listeners[i]);
index f42de363afaae68bbd968318f1d331877f5514fc..a698e59674fc5acbc59d9c75892963a0115b7c26 100644 (file)
@@ -1,7 +1,12 @@
 eclipse.preferences.version=1
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
-org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.7
+org.eclipse.jdt.core.compiler.source=1.8
index 237d43f79e35ab7deeb05d0dd3712c03000873e3..fd87f553cb6af15e869ecba7255cca82fc61f33c 100644 (file)
@@ -2,10 +2,10 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: eu.etaxonomy.taxeditor.test
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.test;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Bundle-ActivationPolicy: lazy
 Bundle-Vendor: EDIT
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Require-Bundle: org.eclipse.ui,
  org.eclipse.core.runtime,
  org.eclipse.ui.ide,
@@ -19,7 +19,6 @@ Require-Bundle: org.eclipse.ui,
  eu.etaxonomy.taxeditor.printpublisher,
  eu.etaxonomy.taxeditor.store,
  org.apache.log4j,
- org.hamcrest,
  org.eclipse.swtbot.eclipse.core,
  org.eclipse.swtbot.eclipse.finder
 Eclipse-RegisterBuddy: org.apache.log4j, org.eclipse.swtbot.swt.finder
index 5119078fc532e98b14dfec8f908e99153e7bb58e..023c94402bd9f3b8f85aaf9ab30ecc70a13b36ed 100644 (file)
@@ -3,7 +3,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0</version>
   </parent>
   <artifactId>eu.etaxonomy.taxeditor.test</artifactId>
   <packaging>eclipse-test-plugin</packaging>
           <daemon>true</daemon>
         </configuration>
         <dependencies>
+            <!-- NOTE: This dependency requires that the  
+                EditRepository is configured as pluginRepository -->
                <dependency>
                        <groupId>eu.etaxonomy</groupId>
                        <artifactId>cdmlib-db</artifactId>
                        <version>${cdmlib.version}</version>
                </dependency>
                  <!-- Do we still need this? If yes, should we move it to cdmlib-db? -->
-          <dependency>
+           <dependency>
               <groupId>commons-dbcp</groupId>
               <artifactId>commons-dbcp</artifactId>
               <version>1.4</version>
index 9ddef90b572e15c2bef0551d67f3fc37fe0118e9..e89b98f22057432524717b6a707c9b2c07ac3a7b 100644 (file)
@@ -20,6 +20,7 @@ import org.unitils.dbunit.annotation.DataSet;
 
 import eu.etaxonomy.cdm.api.application.CdmApplicationState;
 import eu.etaxonomy.cdm.io.common.ExportResult;
+import eu.etaxonomy.cdm.io.common.ExportResultType;
 import eu.etaxonomy.cdm.io.csv.caryophyllales.out.CsvNameExportConfigurator;
 import eu.etaxonomy.cdm.io.csv.redlist.demo.CsvDemoExportConfigurator;
 import eu.etaxonomy.cdm.io.jaxb.JaxbExportConfigurator;
@@ -36,12 +37,12 @@ import eu.etaxonomy.taxeditor.httpinvoker.BaseRemotingTest;
 public class IOServiceExportTest extends BaseRemotingTest {
 
     private final IIOService ioService = CdmApplicationState.getIOService();
-    
+
     @Test
     public void exportJaxbTest() throws IOException {
         JaxbExportConfigurator config = JaxbExportConfigurator.NewInstance(null, null);
         ExportResult result = ioService.export(config);
-        List<byte[]> dataList = result.getExportData();
+        List<byte[]> dataList = (List<byte[]>)result.getExportData().getExportData();
         Assert.assertEquals(1, dataList.size());
         byte[] exportData = dataList.get(0);
         String savePath = "target/exportjaxb.xml";
@@ -56,7 +57,7 @@ public class IOServiceExportTest extends BaseRemotingTest {
     public void exportSDDTest() throws IOException {
         SDDExportConfigurator config = SDDExportConfigurator.NewInstance(null, null, null);
         ExportResult result = ioService.export(config);
-        List<byte[]> dataList = result.getExportData();
+        List<byte[]> dataList = (List<byte[]>)result.getExportData().getExportData();
         Assert.assertEquals(1, dataList.size());
         byte[] exportData = dataList.get(0);
         String savePath = "target/exportsdd.xml";
@@ -81,20 +82,22 @@ public class IOServiceExportTest extends BaseRemotingTest {
         config.setAuthor(true);
         config.setRank(true);
         config.setLastChange(true);
+        config.setResultType(ExportResultType.BYTE_ARRAY);
+
 
         ExportResult result = ioService.export(config);
-        List<byte[]> dataList = result.getExportData();
-        Assert.assertEquals(1, dataList.size());
-        byte[] exportData = dataList.get(0);
+        byte[] dataList =(byte[])result.getExportData().getExportData();
+       // Assert.assertEquals(1, dataList.length);
+       // byte[] exportData = dataList.get(0);
         String savePath = "target/exportcsv.xml";
-        saveToFile(savePath, exportData);
+        saveToFile(savePath, dataList);
     }
 
     @Test
     public void exportCSVNameTest() throws IOException {
         CsvNameExportConfigurator config = CsvNameExportConfigurator.NewInstance(null,null);
         ExportResult result = ioService.export(config);
-        List<byte[]> dataList = result.getExportData();
+        List<byte[]> dataList = (List<byte[]>)result.getExportData().getExportData();
         Assert.assertEquals(1, dataList.size());
         byte[] exportData = dataList.get(0);
         String savePath = "target/exportcsvname.xml";
@@ -107,7 +110,7 @@ public class IOServiceExportTest extends BaseRemotingTest {
         config.setNamesOnly(false);
         config.setClassificationUUID(UUID.fromString("0c2b5d25-7b15-4401-8b51-dd4be0ee5cab"));
         ExportResult result = ioService.export(config);
-        List<byte[]> dataList = result.getExportData();
+        List<byte[]> dataList =(List<byte[]>) result.getExportData().getExportData();
         Assert.assertEquals(1, dataList.size());
         byte[] exportData = dataList.get(0);
         String savePath = "target/exportcsvprint.xml";
index 8d96af93ccc661f6d892ed8f8702f38c0820f378..ae65419e35e32da22d30ffc47610f76d16b4e20a 100644 (file)
@@ -32,7 +32,6 @@ import eu.etaxonomy.cdm.api.service.ITaxonService;
 import eu.etaxonomy.cdm.api.service.ITermService;
 import eu.etaxonomy.cdm.api.service.IUserService;
 import eu.etaxonomy.cdm.api.service.IVocabularyService;
-import eu.etaxonomy.cdm.api.service.pager.Pager;
 import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
 import eu.etaxonomy.cdm.model.agent.AgentBase;
 import eu.etaxonomy.cdm.model.agent.Person;
@@ -175,7 +174,7 @@ public class CdmEntitySessionAwareTest extends RemotingSessionAwareTest {
     }
 
     @Test
-    @Ignore
+@Ignore
     public void addGrandChildPolytomousKeyNode() {
 
         PolytomousKey pKey = CdmBase.deproxy(polytomousKeyService.find(polytomousKeyUuid),PolytomousKey.class);
@@ -467,7 +466,7 @@ public class CdmEntitySessionAwareTest extends RemotingSessionAwareTest {
                        }
                }
                termService.delete(updateTerms);
-               
+
 //              if(termService.findByRepresentationText("UpdateTest", Feature.class, null, null) != null) {
 //                     Pager<Feature> terms =  termService.findByRepresentationText("UpdateTest", Feature.class, null, null);
 //                     if (!terms.getRecords().isEmpty()){
@@ -487,7 +486,7 @@ public class CdmEntitySessionAwareTest extends RemotingSessionAwareTest {
             vocNameFeature.addTerm(newTerm);
 
             List<MergeResult<TermVocabulary>> mergeResults = vocabularyService.merge(vocs, true);
-            
+
             for(MergeResult<TermVocabulary> result : mergeResults){
                TermVocabulary voc = result.getMergedEntity();
                 if(voc.getUuid().equals(vocNameFeatureUuid)) {
index d17b6724d17fdf4163fce24c2c881b840d5a7104..a698e59674fc5acbc59d9c75892963a0115b7c26 100644 (file)
@@ -1,12 +1,12 @@
 eclipse.preferences.version=1
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
 org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
 org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.7
+org.eclipse.jdt.core.compiler.compliance=1.8
 org.eclipse.jdt.core.compiler.debug.lineNumber=generate
 org.eclipse.jdt.core.compiler.debug.localVariable=generate
 org.eclipse.jdt.core.compiler.debug.sourceFile=generate
 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
 org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.7
+org.eclipse.jdt.core.compiler.source=1.8
index 64b93bcf735a12c51d71e5ee6991b2f860e044fd..0f748c43db7227583c6bbec35f410d71c964c3eb 100644 (file)
@@ -2,9 +2,9 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Webapp
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.webapp;singleton:=true
-Bundle-Version: 4.6.0
+Bundle-Version: 4.7.0
 Require-Bundle: org.eclipse.core.runtime
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
 Bundle-ActivationPolicy: lazy
 Export-Package: eu.etaxonomy.taxeditor.webapp
 Bundle-ClassPath: .,
index a5a7a9f2daaf8f900ee36c5175164aacfab19b7b..a8ba0ac03626e5623a4ba08059dce7f31d6244fd 100644 (file)
@@ -1,5 +1,5 @@
-source.. = src/main/java/,\           
-           src/main/resources/           
+source.. = src/main/java/,\
+           src/main/resources/
 bin.includes = META-INF/,\
                .,\
                lib/,\
@@ -8,3 +8,4 @@ bin.includes = META-INF/,\
                lib/mysql-connector-java-5.1.38.jar,\
                lib/postgresql-9.4-1206-jdbc4.jar,\
                lib/jdbc4-2.0.jar
+output.. = bin/
index c4b33e133c37640fc7369a1b203a406869cb8c43..5f5a8b3d531ec34c27a356d8d734f088fddd4b28 100644 (file)
@@ -4,7 +4,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <artifactId>eu.etaxonomy.taxeditor.webapp</artifactId>
diff --git a/eu.etaxonomy.taxeditor.workbench/.classpath b/eu.etaxonomy.taxeditor.workbench/.classpath
new file mode 100644 (file)
index 0000000..e927d60
--- /dev/null
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+       <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+       <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+       <classpathentry kind="src" path="src/main/java"/>
+       <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/eu.etaxonomy.taxeditor.workbench/.project b/eu.etaxonomy.taxeditor.workbench/.project
new file mode 100644 (file)
index 0000000..401ca86
--- /dev/null
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+       <name>eu.etaxonomy.taxeditor.workbench</name>
+       <comment>Contains the application model i.e. common menus, toolbar items, commands, etc 
+  used for the application</comment>
+       <projects>
+       </projects>
+       <buildSpec>
+               <buildCommand>
+                       <name>org.eclipse.jdt.core.javabuilder</name>
+                       <arguments>
+                       </arguments>
+               </buildCommand>
+               <buildCommand>
+                       <name>org.eclipse.pde.ManifestBuilder</name>
+                       <arguments>
+                       </arguments>
+               </buildCommand>
+               <buildCommand>
+                       <name>org.eclipse.pde.SchemaBuilder</name>
+                       <arguments>
+                       </arguments>
+               </buildCommand>
+       </buildSpec>
+       <natures>
+               <nature>org.eclipse.jdt.core.javanature</nature>
+               <nature>org.eclipse.pde.PluginNature</nature>
+       </natures>
+</projectDescription>
diff --git a/eu.etaxonomy.taxeditor.workbench/META-INF/MANIFEST.MF b/eu.etaxonomy.taxeditor.workbench/META-INF/MANIFEST.MF
new file mode 100644 (file)
index 0000000..9028745
--- /dev/null
@@ -0,0 +1,18 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Workbench Bundle
+Bundle-SymbolicName: eu.etaxonomy.taxeditor.workbench;singleton:=true
+Bundle-Version: 4.7.0
+Bundle-Activator: eu.etaxonomy.taxeditor.workbench.Activator
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.e4.ui.workbench,
+ org.eclipse.e4.ui.model.workbench;bundle-version="1.2.0",
+ org.eclipse.e4.core.di.annotations;bundle-version="1.5.0",
+ org.apache.log4j;bundle-version="1.2.15",
+ org.eclipse.equinox.p2.ui,
+ org.eclipse.equinox.p2.metadata;bundle-version="2.3.100",
+ org.eclipse.equinox.p2.operations;bundle-version="2.4.200"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: EDIT
diff --git a/eu.etaxonomy.taxeditor.workbench/OSGI-INF/l10n/bundle.properties b/eu.etaxonomy.taxeditor.workbench/OSGI-INF/l10n/bundle.properties
new file mode 100644 (file)
index 0000000..ebffbca
--- /dev/null
@@ -0,0 +1,36 @@
+#Properties file for eu.etaxonomy.taxeditor.workbench
+menu.label = General
+menu.label.0 = Edit
+menu.label.1 = Window
+menu.label.2 = Help
+menu.label.3 = New
+menu.label.4 = Admin
+command.label = Close
+command.label.0 = Close All
+command.label.1 = Save
+command.label.2 = Save All
+command.label.3 = Import...
+command.label.4 = Export...
+command.label.5 = Exit
+command.label.6 = Undo
+command.label.7 = Redo
+command.label.8 = Cut
+command.label.9 = Copy
+command.label.10 = Paste
+command.label.11 = Delete
+command.label.12 = Preferences
+command.label.13 = Help Contents
+command.label.14 = Search
+command.label.15 = Dynamic Help
+command.label.16 = Parser Help Website
+command.label.17 = Check for Updates
+command.label.18 = Install New Software...
+command.label.19 = About Taxonomic Editor
+command.label.20 = About the EDIT Platform
+command.label.21 = New
+command.label.22 = Save
+command.label.23 = Server-sided Preferences
+command.label.24 = Database Repair Functionality
+command.label.25 = Import Preferences
+command.name = Parser Help
+command.name.0 = About the EDIT Platform
diff --git a/eu.etaxonomy.taxeditor.workbench/OSGI-INF/l10n/bundle_de.properties b/eu.etaxonomy.taxeditor.workbench/OSGI-INF/l10n/bundle_de.properties
new file mode 100644 (file)
index 0000000..9b23f0d
--- /dev/null
@@ -0,0 +1,35 @@
+menu.label = Datei
+menu.label.0 = Bearbeiten
+menu.label.1 = Extras
+menu.label.2 = Hilfe
+menu.label.3 = Neu
+menu.label.4 = Admin
+command.label = Schlie\u00dfen
+command.label.0 = Schlie\u00dfe alle
+command.label.1 = Speichern
+command.label.2 = Speichere alle
+command.label.3 = Import...
+command.label.4 = Export...
+command.label.5 = Beenden
+command.label.6 = R\u00fcckg\u00e4ngig
+command.label.7 = Letzen Befehl wiederholen
+command.label.8 = Ausschneiden
+command.label.9 = Kopieren
+command.label.10 = Einf\u00fcgen
+command.label.11 = L\u00f6schen
+command.label.12 = Einstellungen
+command.label.13 = Hilfeinhalt
+command.label.14 = Suchen
+command.label.15 = Dynamische Hilfe
+command.label.16 = Parser Hilfe Webseite (auf Englisch)
+command.label.17 = Suche nach Updates
+command.label.18 = Installiere Neue Software...
+command.label.19 = \u00dcber den Taxonomischen Editor
+command.label.20 = \u00dcber die EDIT Platform
+command.label.21 = Neu
+command.label.22 = Speichern
+command.label.23 = Serverseitige Präferenzen
+command.label.24 = Datenbank Reparatur Funktionalität
+command.label.25 = Import Präferenzen
+command.name = Parser Hilfe
+command.name.0 = \u00dcber die EDIT Platform
diff --git a/eu.etaxonomy.taxeditor.workbench/build.properties b/eu.etaxonomy.taxeditor.workbench/build.properties
new file mode 100644 (file)
index 0000000..b9cce9e
--- /dev/null
@@ -0,0 +1,8 @@
+source.. = src/main/java/
+output.. = bin/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml,\
+               OSGI-INF/,\
+               fragment.e4xmi,\
+               OSGI-INF/l10n/bundle.properties
diff --git a/eu.etaxonomy.taxeditor.workbench/fragment.e4xmi b/eu.etaxonomy.taxeditor.workbench/fragment.e4xmi
new file mode 100644 (file)
index 0000000..1514dcd
--- /dev/null
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding="ASCII"?>
+<fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:commands="http://www.eclipse.org/ui/2010/UIModel/application/commands" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmlns:menu="http://www.eclipse.org/ui/2010/UIModel/application/ui/menu" xmlns:ui="http://www.eclipse.org/ui/2010/UIModel/application/ui" xmi:id="_pdAMoB4DEeehWtOSgLepjA">
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_FaGnoCQNEeen_7LZsZSNoA" featurename="menuContributions" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="menu:MenuContribution" xmi:id="_FaGnoSQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.workbench.menu" parentId="org.eclipse.ui.main.menu">
+      <children xsi:type="menu:Menu" xmi:id="_FaGnoiQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.workbench.menu.file" label="%menu.label">
+        <children xsi:type="menu:Menu" xmi:id="_FaGnoyQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.navigation.menu.new" label="%menu.label.3"/>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_FaGnpCQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.menuseparator.0"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_FaGnpSQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.close" label="%command.label">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_FaGnpiQNEeen_7LZsZSNoA" coreExpressionId="isCdmStoreConnected"/>
+          <command href="../eu.etaxonomy.taxeditor.application/fragment.e4xmi#_LVTo8B62EeePLJ5to5QrXQ"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_FaGnpyQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.closeAll" label="%command.label.0">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_FaGnqCQNEeen_7LZsZSNoA" coreExpressionId="isCdmStoreConnected"/>
+          <command href="../eu.etaxonomy.taxeditor.application/fragment.e4xmi#_MrLPsB62EeePLJ5to5QrXQ"/>
+        </children>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_FaGnqSQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.menuseparator.3"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_FaGnryQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.save" label="%command.label.1">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_FaGnsCQNEeen_7LZsZSNoA" coreExpressionId="isCdmStoreConnected"/>
+          <command href="../eu.etaxonomy.taxeditor.application/fragment.e4xmi#_PkWcQB62EeePLJ5to5QrXQ"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_FaGnsSQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.saveAll" label="%command.label.2">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_FaGnsiQNEeen_7LZsZSNoA" coreExpressionId="isCdmStoreConnected"/>
+          <command href="../eu.etaxonomy.taxeditor.application/fragment.e4xmi#_RWLmQB62EeePLJ5to5QrXQ"/>
+        </children>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_FaGnriQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.menuseparator.1"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_FaGnqiQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.import" label="%command.label.3">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_FaGnqyQNEeen_7LZsZSNoA" coreExpressionId="isCdmStoreConnected"/>
+          <command href="../eu.etaxonomy.taxeditor.application/fragment.e4xmi#_dlo3oB60EeePLJ5to5QrXQ"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_FaGnrCQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.export" label="%command.label.4">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_FaGnrSQNEeen_7LZsZSNoA" coreExpressionId="isCdmStoreConnected"/>
+          <command href="../eu.etaxonomy.taxeditor.application/fragment.e4xmi#_CYHrgB62EeePLJ5to5QrXQ"/>
+        </children>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_FaGnsyQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.filemenu.io"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_FaGntCQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.handledmenuitem.exit" label="%command.label.5">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_FaGntSQNEeen_7LZsZSNoA" coreExpressionId="isCdmStoreConnected"/>
+          <command href="../eu.etaxonomy.taxeditor.application/fragment.e4xmi#_TvLd8B62EeePLJ5to5QrXQ"/>
+        </children>
+      </children>
+      <children xsi:type="menu:Menu" xmi:id="_FaGntiQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.workbench.menu.edit" toBeRendered="false" visible="false" label="%menu.label.0"/>
+      <children xsi:type="menu:Menu" xmi:id="_FaGntyQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.workbench.menu.window" label="%menu.label.1">
+        <children xsi:type="menu:Menu" xmi:id="_DH_m0CkKEeeCvszP-_feIA" elementId="eu.etaxonomy.taxeditor.menu.showView" label="Show View"/>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_FaGnuCQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.application.windowMenu.last"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_FaGnuSQNEeen_7LZsZSNoA" elementId="org.eclipse.ui.main.menu.window.preferences" label="%command.label.12">
+          <command href="../eu.etaxonomy.taxeditor.application/fragment.e4xmi#_l9kXoB7PEeeC-JvycL9ysA"/>
+        </children>
+      </children>
+      <children xsi:type="menu:Menu" xmi:id="_FaGnuiQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.workbench.menu.admin" label="%menu.label.4">
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_b4RFsCQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.workbench.menu.admin.dbpreferences" label="%command.label.23" command="_VawPsCQsEeeq76l4saMAFQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_b4RFsSQsEeeq76l4saMAFQ" coreExpressionId="hasROLE_PROJECT_MANAGER_AND_isCdmStoreConnected"/>
+        </children>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_cWhvACQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.workbench.menu.admin.dbrepair" label="%command.label.24" command="_Va29YCQsEeeq76l4saMAFQ">
+          <visibleWhen xsi:type="ui:CoreExpression" xmi:id="_cWhvASQsEeeq76l4saMAFQ" coreExpressionId="hasROLE_PROJECT_MANAGER_AND_isCdmStoreConnected"/>
+        </children>
+      </children>
+      <children xsi:type="menu:Menu" xmi:id="_FaGnvyQNEeen_7LZsZSNoA" elementId="eu.etaxonomy.taxeditor.workbench.menu.help" label="%menu.label.2">
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_3cDNACQ7EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.workbench.menu.help.help_contents" label="%command.label.13" command="_xOYw4CQ7EeeKsvEah5BAoQ"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_HqntYCQ8EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.workbench.menu.help.search" label="%command.label.14" command="_-t3NwCQ7EeeKsvEah5BAoQ"/>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_7NbM4CQ7EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.workbench.menuseparator.0"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_Wg-doCQ8EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.workbench.menu.help.dynamic" label="%command.label.15" command="_UIXAcCQ8EeeKsvEah5BAoQ"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_dTyBcCQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.workbench.menu.help.parser" label="%command.label.16" command="_UZ_WQCQsEeeq76l4saMAFQ"/>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_QZlooCQ8EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.workbench.menuseparator.1"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_JCjXYCRBEeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.workbench.handledmenuitem.commandlabel17" label="%command.label.17" command="_rSmScCQ8EeeKsvEah5BAoQ"/>
+        <children xsi:type="menu:MenuSeparator" xmi:id="_moFrICQ8EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.workbench.menuseparator.2"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_MtO5YCRBEeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.workbench.handledmenuitem.commandlabel19" label="%command.label.19" command="_tmIbUCQ8EeeKsvEah5BAoQ"/>
+        <children xsi:type="menu:HandledMenuItem" xmi:id="_d0m2kCQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.workbench.menu.help.about_edit" label="%command.label.20" command="_UZ2zYCQsEeeq76l4saMAFQ"/>
+      </children>
+    </elements>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_nOhPoB9zEeeIA_2gwq7JKg" featurename="trimContributions" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="menu:TrimContribution" xmi:id="_FIbzwB92EeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.workbench.trimcontribution.mainToolbar" parentId="org.eclipse.ui.main.toolbar" positionInParent="after=additions">
+      <children xsi:type="menu:ToolBar" xmi:id="_KDVngB92EeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.workbench.menu.toolbar.0">
+        <children xsi:type="menu:HandledToolItem" xmi:id="_KvxPsB92EeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.workbench.menu.toolbar.new" label="%command.label.21" iconURI="platform:/plugin/org.eclipse.ui/icons/full/etool16/new_wiz.png" command="_hooiQB7QEeeC-JvycL9ysA"/>
+        <children xsi:type="menu:HandledToolItem" xmi:id="_ARn5AB96EeeIA_2gwq7JKg" elementId="eu.etaxonomy.taxeditor.workbench.menu.toolbar.save" label="%command.label.22" iconURI="platform:/plugin/eu.etaxonomy.taxeditor.store/icons/save_edit.gif" command="_PkWcQB62EeePLJ5to5QrXQ"/>
+      </children>
+    </elements>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_1jM6sB4JEeehWtOSgLepjA" featurename="commands" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="commands:Command" xmi:id="_dlo3oB60EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.import" commandName="%command.label.3"/>
+    <elements xsi:type="commands:Command" xmi:id="_CYHrgB62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.export" commandName="%command.label.4"/>
+    <elements xsi:type="commands:Command" xmi:id="_LVTo8B62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.close" commandName="%command.label"/>
+    <elements xsi:type="commands:Command" xmi:id="_MrLPsB62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.closeAll" commandName="%command.label.0"/>
+    <elements xsi:type="commands:Command" xmi:id="_PkWcQB62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.save" commandName="%command.label.1"/>
+    <elements xsi:type="commands:Command" xmi:id="_RWLmQB62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.saveAll" commandName="%command.label.2"/>
+    <elements xsi:type="commands:Command" xmi:id="_TvLd8B62EeePLJ5to5QrXQ" elementId="org.eclipse.ui.file.exit" commandName="%command.label.5"/>
+    <elements xsi:type="commands:Command" xmi:id="_5pfmIB7DEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.undo" commandName="%command.label.6"/>
+    <elements xsi:type="commands:Command" xmi:id="_EarQwB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.redo" commandName="%command.label.7"/>
+    <elements xsi:type="commands:Command" xmi:id="_PhIAwB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.cut" commandName="%command.label.8"/>
+    <elements xsi:type="commands:Command" xmi:id="_RxxNsB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.copy" commandName="%command.label.9"/>
+    <elements xsi:type="commands:Command" xmi:id="_TmIHQB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.paste" commandName="%command.label.10"/>
+    <elements xsi:type="commands:Command" xmi:id="_WOTDYB7EEeeRW_RHu3JLqQ" elementId="org.eclipse.ui.edit.delete" commandName="%command.label.11"/>
+    <elements xsi:type="commands:Command" xmi:id="_l9kXoB7PEeeC-JvycL9ysA" elementId="org.eclipse.ui.window.preferences" commandName="%command.label.12"/>
+    <elements xsi:type="commands:Command" xmi:id="_hooiQB7QEeeC-JvycL9ysA" elementId="org.eclipse.ui.newWizard" commandName="%command.label.21"/>
+    <elements xsi:type="commands:Command" xmi:id="_UZ2zYCQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.workbench.help.aboutPlatform" commandName="%command.name.0"/>
+    <elements xsi:type="commands:Command" xmi:id="_UZ_WQCQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.workbench.help.parser" commandName="%command.name"/>
+    <elements xsi:type="commands:Command" xmi:id="_VawPsCQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.workbench.DatabaseSettings" commandName="%command.label.23"/>
+    <elements xsi:type="commands:Command" xmi:id="_Va29YCQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.workbench.DatabaseRepairFunctionality" commandName="%command.label.24"/>
+    <elements xsi:type="commands:Command" xmi:id="_xOYw4CQ7EeeKsvEah5BAoQ" elementId="org.eclipse.ui.help.helpContents" commandName="%command.label.13"/>
+    <elements xsi:type="commands:Command" xmi:id="_-t3NwCQ7EeeKsvEah5BAoQ" elementId="org.eclipse.ui.help.helpSearch" commandName="%command.label.14"/>
+    <elements xsi:type="commands:Command" xmi:id="_UIXAcCQ8EeeKsvEah5BAoQ" elementId="org.eclipse.ui.help.dynamicHelp" commandName="%command.label.15"/>
+    <elements xsi:type="commands:Command" xmi:id="_rSmScCQ8EeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.update" commandName="%command.label.17"/>
+    <elements xsi:type="commands:Command" xmi:id="_tmIbUCQ8EeeKsvEah5BAoQ" elementId="org.eclipse.ui.help.aboutAction" commandName="%command.label.19"/>
+    <elements xsi:type="commands:Command" xmi:id="_koenACRAEeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.install" commandName="%command.label.18"/>
+    <elements xsi:type="commands:Command" xmi:id="_fdEqUCUKEeeHw5lTgGMs1Q" elementId="eu.etaxonomy.taxeditor.workbench.ImportSettings" commandName="%command.label.25"/>
+    <elements xsi:type="commands:Command" xmi:id="_hMjgECZsEeer_rabtodzWA" elementId="eu.etaxonomy.taxeditor.command.openPart" commandName="Open Part">
+      <parameters xmi:id="_hMjgESZsEeer_rabtodzWA" elementId="eu.etaxonomy.taxeditor.workbench.commandparameter.partName" name="partName" optional="false"/>
+    </elements>
+  </fragments>
+  <fragments xsi:type="fragment:StringModelFragment" xmi:id="_WLNcQCQsEeeq76l4saMAFQ" featurename="handlers" parentElementId="org.eclipse.e4.legacy.ide.application">
+    <elements xsi:type="commands:Handler" xmi:id="_WLNcQSQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.OpenExternalAboutPlatformHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.workbench/eu.etaxonomy.taxeditor.workbench.OpenExternalAboutPlatformHandler" command="_UZ2zYCQsEeeq76l4saMAFQ"/>
+    <elements xsi:type="commands:Handler" xmi:id="_WLNcQiQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.OpenExternalParserHelpHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.workbench/eu.etaxonomy.taxeditor.workbench.OpenExternalParserHelpHandler" command="_UZ_WQCQsEeeq76l4saMAFQ"/>
+    <elements xsi:type="commands:Handler" xmi:id="_WLNcQyQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.handler.OpenDatabaseRepairWizardHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.handler.OpenDatabaseRepairWizardHandler" command="_Va29YCQsEeeq76l4saMAFQ"/>
+    <elements xsi:type="commands:Handler" xmi:id="_WLNcRCQsEeeq76l4saMAFQ" elementId="eu.etaxonomy.taxeditor.handler.OpenDatabasePreferencesWizardHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.store/eu.etaxonomy.taxeditor.handler.OpenDatabasePreferencesWizardHandler" command="_VawPsCQsEeeq76l4saMAFQ"/>
+    <elements xsi:type="commands:Handler" xmi:id="_S6Rf4CRAEeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.update.InstallNewSoftwareHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.workbench/eu.etaxonomy.taxeditor.workbench.update.InstallNewSoftwareHandler" command="_koenACRAEeeKsvEah5BAoQ"/>
+    <elements xsi:type="commands:Handler" xmi:id="_uzAhUCRAEeeKsvEah5BAoQ" elementId="eu.etaxonomy.taxeditor.update.UpdateHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.workbench/eu.etaxonomy.taxeditor.workbench.update.UpdateHandler" command="_rSmScCQ8EeeKsvEah5BAoQ"/>
+    <elements xsi:type="commands:Handler" xmi:id="_nSIiECUKEeeHw5lTgGMs1Q" elementId="eu.etaxonomy.taxeditor.handler.OpenImportPreferenceHandler" command="_fdEqUCUKEeeHw5lTgGMs1Q"/>
+    <elements xsi:type="commands:Handler" xmi:id="_2fnUYCZ0EeeQLpuomSmVoQ" elementId="eu.etaxonomy.taxeditor.workbench.OpenPartHandler" contributionURI="bundleclass://eu.etaxonomy.taxeditor.workbench/eu.etaxonomy.taxeditor.workbench.OpenPartHandler" command="_hMjgECZsEeer_rabtodzWA"/>
+  </fragments>
+</fragment:ModelFragments>
diff --git a/eu.etaxonomy.taxeditor.workbench/plugin.xml b/eu.etaxonomy.taxeditor.workbench/plugin.xml
new file mode 100644 (file)
index 0000000..8a49dfe
--- /dev/null
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+   <extension
+         id="id2"
+         point="org.eclipse.e4.workbench.model">
+      <fragment
+            apply="always"
+            uri="fragment.e4xmi">
+      </fragment>
+   </extension>
+
+</plugin>
diff --git a/eu.etaxonomy.taxeditor.workbench/pom.xml b/eu.etaxonomy.taxeditor.workbench/pom.xml
new file mode 100644 (file)
index 0000000..011240f
--- /dev/null
@@ -0,0 +1,16 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+  <parent>
+    <groupId>eu.etaxonomy</groupId>
+    <artifactId>taxeditor-parent</artifactId>
+    <version>4.7.0</version>
+  </parent>
+
+  <modelVersion>4.0.0</modelVersion>
+  <artifactId>eu.etaxonomy.taxeditor.workbench</artifactId>
+  <packaging>eclipse-plugin</packaging>
+
+  <name>Workbench Bundle</name>
+  <description>Provides the e4 application model and basic UI elements like main menu, toolbar and standard commands</description>
+
+</project>
diff --git a/eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/Activator.java b/eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/Activator.java
new file mode 100644 (file)
index 0000000..b84c3bb
--- /dev/null
@@ -0,0 +1,50 @@
+package eu.etaxonomy.taxeditor.workbench;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+
+       // The plug-in ID
+       public static final String PLUGIN_ID = "eu.etaxonomy.taxeditor.workbench"; //$NON-NLS-1$
+
+       // The shared instance
+       private static Activator plugin;
+       
+       /**
+        * The constructor
+        */
+       public Activator() {
+       }
+
+       /*
+        * (non-Javadoc)
+        * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+        */
+       public void start(BundleContext context) throws Exception {
+               super.start(context);
+               plugin = this;
+       }
+
+       /*
+        * (non-Javadoc)
+        * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+        */
+       public void stop(BundleContext context) throws Exception {
+               plugin = null;
+               super.stop(context);
+       }
+
+       /**
+        * Returns the shared instance
+        *
+        * @return the shared instance
+        */
+       public static Activator getDefault() {
+               return plugin;
+       }
+
+}
diff --git a/eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/AppModelId.java b/eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/AppModelId.java
new file mode 100644 (file)
index 0000000..7edd358
--- /dev/null
@@ -0,0 +1,74 @@
+package eu.etaxonomy.taxeditor.workbench;
+
+public class AppModelId {
+       public static final String COMMANDPARAMETER_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_COMMANDPARAMETER_PARTNAME = "eu.etaxonomy.taxeditor.workbench.commandparameter.partName";
+       public static final String COMMAND_EU_ETAXONOMY_TAXEDITOR_COMMAND_OPENPART = "eu.etaxonomy.taxeditor.command.openPart";
+       public static final String COMMAND_EU_ETAXONOMY_TAXEDITOR_INSTALL = "eu.etaxonomy.taxeditor.install";
+       public static final String COMMAND_EU_ETAXONOMY_TAXEDITOR_UPDATE = "eu.etaxonomy.taxeditor.update";
+       public static final String COMMAND_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_DATABASEREPAIRFUNCTIONALITY = "eu.etaxonomy.taxeditor.workbench.DatabaseRepairFunctionality";
+       public static final String COMMAND_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_DATABASESETTINGS = "eu.etaxonomy.taxeditor.workbench.DatabaseSettings";
+       public static final String COMMAND_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_HELP_ABOUTPLATFORM = "eu.etaxonomy.taxeditor.workbench.help.aboutPlatform";
+       public static final String COMMAND_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_HELP_PARSER = "eu.etaxonomy.taxeditor.workbench.help.parser";
+       public static final String COMMAND_ORG_ECLIPSE_UI_EDIT_COPY = "org.eclipse.ui.edit.copy";
+       public static final String COMMAND_ORG_ECLIPSE_UI_EDIT_CUT = "org.eclipse.ui.edit.cut";
+       public static final String COMMAND_ORG_ECLIPSE_UI_EDIT_DELETE = "org.eclipse.ui.edit.delete";
+       public static final String COMMAND_ORG_ECLIPSE_UI_EDIT_PASTE = "org.eclipse.ui.edit.paste";
+       public static final String COMMAND_ORG_ECLIPSE_UI_EDIT_REDO = "org.eclipse.ui.edit.redo";
+       public static final String COMMAND_ORG_ECLIPSE_UI_EDIT_UNDO = "org.eclipse.ui.edit.undo";
+       public static final String COMMAND_ORG_ECLIPSE_UI_FILE_CLOSE = "org.eclipse.ui.file.close";
+       public static final String COMMAND_ORG_ECLIPSE_UI_FILE_CLOSEALL = "org.eclipse.ui.file.closeAll";
+       public static final String COMMAND_ORG_ECLIPSE_UI_FILE_EXIT = "org.eclipse.ui.file.exit";
+       public static final String COMMAND_ORG_ECLIPSE_UI_FILE_EXPORT = "org.eclipse.ui.file.export";
+       public static final String COMMAND_ORG_ECLIPSE_UI_FILE_IMPORT = "org.eclipse.ui.file.import";
+       public static final String COMMAND_ORG_ECLIPSE_UI_FILE_SAVE = "org.eclipse.ui.file.save";
+       public static final String COMMAND_ORG_ECLIPSE_UI_FILE_SAVEALL = "org.eclipse.ui.file.saveAll";
+       public static final String COMMAND_ORG_ECLIPSE_UI_HELP_ABOUTACTION = "org.eclipse.ui.help.aboutAction";
+       public static final String COMMAND_ORG_ECLIPSE_UI_HELP_DYNAMICHELP = "org.eclipse.ui.help.dynamicHelp";
+       public static final String COMMAND_ORG_ECLIPSE_UI_HELP_HELPCONTENTS = "org.eclipse.ui.help.helpContents";
+       public static final String COMMAND_ORG_ECLIPSE_UI_HELP_HELPSEARCH = "org.eclipse.ui.help.helpSearch";
+       public static final String COMMAND_ORG_ECLIPSE_UI_NEWWIZARD = "org.eclipse.ui.newWizard";
+       public static final String COMMAND_ORG_ECLIPSE_UI_WINDOW_PREFERENCES = "org.eclipse.ui.window.preferences";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_APPLICATION_HANDLEDMENUITEM_CLOSE = "eu.etaxonomy.taxeditor.application.handledmenuitem.close";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_APPLICATION_HANDLEDMENUITEM_CLOSEALL = "eu.etaxonomy.taxeditor.application.handledmenuitem.closeAll";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_APPLICATION_HANDLEDMENUITEM_EXIT = "eu.etaxonomy.taxeditor.application.handledmenuitem.exit";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_APPLICATION_HANDLEDMENUITEM_EXPORT = "eu.etaxonomy.taxeditor.application.handledmenuitem.export";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_APPLICATION_HANDLEDMENUITEM_IMPORT = "eu.etaxonomy.taxeditor.application.handledmenuitem.import";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_APPLICATION_HANDLEDMENUITEM_SAVE = "eu.etaxonomy.taxeditor.application.handledmenuitem.save";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_APPLICATION_HANDLEDMENUITEM_SAVEALL = "eu.etaxonomy.taxeditor.application.handledmenuitem.saveAll";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_HANDLEDMENUITEM_COMMANDLABEL17 = "eu.etaxonomy.taxeditor.workbench.handledmenuitem.commandlabel17";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_HANDLEDMENUITEM_COMMANDLABEL19 = "eu.etaxonomy.taxeditor.workbench.handledmenuitem.commandlabel19";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_ADMIN_DBPREFERENCES = "eu.etaxonomy.taxeditor.workbench.menu.admin.dbpreferences";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_ADMIN_DBREPAIR = "eu.etaxonomy.taxeditor.workbench.menu.admin.dbrepair";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_HELP_ABOUT_EDIT = "eu.etaxonomy.taxeditor.workbench.menu.help.about_edit";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_HELP_DYNAMIC = "eu.etaxonomy.taxeditor.workbench.menu.help.dynamic";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_HELP_HELP_CONTENTS = "eu.etaxonomy.taxeditor.workbench.menu.help.help_contents";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_HELP_PARSER = "eu.etaxonomy.taxeditor.workbench.menu.help.parser";
+       public static final String HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_HELP_SEARCH = "eu.etaxonomy.taxeditor.workbench.menu.help.search";
+       public static final String HANDLEDMENUITEM_ORG_ECLIPSE_UI_MAIN_MENU_WINDOW_PREFERENCES = "org.eclipse.ui.main.menu.window.preferences";
+       public static final String HANDLEDTOOLITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_TOOLBAR_NEW = "eu.etaxonomy.taxeditor.workbench.menu.toolbar.new";
+       public static final String HANDLEDTOOLITEM_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_TOOLBAR_SAVE = "eu.etaxonomy.taxeditor.workbench.menu.toolbar.save";
+       public static final String HANDLER_EU_ETAXONOMY_TAXEDITOR_HANDLER_OPENDATABASEPREFERENCESWIZARDHANDLER = "eu.etaxonomy.taxeditor.handler.OpenDatabasePreferencesWizardHandler";
+       public static final String HANDLER_EU_ETAXONOMY_TAXEDITOR_HANDLER_OPENDATABASEREPAIRWIZARDHANDLER = "eu.etaxonomy.taxeditor.handler.OpenDatabaseRepairWizardHandler";
+       public static final String HANDLER_EU_ETAXONOMY_TAXEDITOR_OPENEXTERNALABOUTPLATFORMHANDLER = "eu.etaxonomy.taxeditor.OpenExternalAboutPlatformHandler";
+       public static final String HANDLER_EU_ETAXONOMY_TAXEDITOR_OPENEXTERNALPARSERHELPHANDLER = "eu.etaxonomy.taxeditor.OpenExternalParserHelpHandler";
+       public static final String HANDLER_EU_ETAXONOMY_TAXEDITOR_UPDATE_INSTALLNEWSOFTWAREHANDLER = "eu.etaxonomy.taxeditor.update.InstallNewSoftwareHandler";
+       public static final String HANDLER_EU_ETAXONOMY_TAXEDITOR_UPDATE_UPDATEHANDLER = "eu.etaxonomy.taxeditor.update.UpdateHandler";
+       public static final String HANDLER_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_OPENPARTHANDLER = "eu.etaxonomy.taxeditor.workbench.OpenPartHandler";
+       public static final String MENUCONTRIBUTION_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU = "eu.etaxonomy.taxeditor.workbench.menu";
+       public static final String MENUSEPARATOR_EU_ETAXONOMY_TAXEDITOR_APPLICATION_FILEMENU_IO = "eu.etaxonomy.taxeditor.application.filemenu.io";
+       public static final String MENUSEPARATOR_EU_ETAXONOMY_TAXEDITOR_APPLICATION_MENUSEPARATOR_0 = "eu.etaxonomy.taxeditor.application.menuseparator.0";
+       public static final String MENUSEPARATOR_EU_ETAXONOMY_TAXEDITOR_APPLICATION_MENUSEPARATOR_1 = "eu.etaxonomy.taxeditor.application.menuseparator.1";
+       public static final String MENUSEPARATOR_EU_ETAXONOMY_TAXEDITOR_APPLICATION_MENUSEPARATOR_3 = "eu.etaxonomy.taxeditor.application.menuseparator.3";
+       public static final String MENUSEPARATOR_EU_ETAXONOMY_TAXEDITOR_APPLICATION_WINDOWMENU_LAST = "eu.etaxonomy.taxeditor.application.windowMenu.last";
+       public static final String MENUSEPARATOR_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENUSEPARATOR_0 = "eu.etaxonomy.taxeditor.workbench.menuseparator.0";
+       public static final String MENUSEPARATOR_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENUSEPARATOR_1 = "eu.etaxonomy.taxeditor.workbench.menuseparator.1";
+       public static final String MENUSEPARATOR_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENUSEPARATOR_2 = "eu.etaxonomy.taxeditor.workbench.menuseparator.2";
+       public static final String MENU_EU_ETAXONOMY_NAVIGATION_MENU_NEW = "eu.etaxonomy.navigation.menu.new";
+       public static final String MENU_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_ADMIN = "eu.etaxonomy.taxeditor.workbench.menu.admin";
+       public static final String MENU_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_EDIT = "eu.etaxonomy.taxeditor.workbench.menu.edit";
+       public static final String MENU_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_FILE = "eu.etaxonomy.taxeditor.workbench.menu.file";
+       public static final String MENU_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_HELP = "eu.etaxonomy.taxeditor.workbench.menu.help";
+       public static final String MENU_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_WINDOW = "eu.etaxonomy.taxeditor.workbench.menu.window";
+       public static final String TOOLBAR_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_MENU_TOOLBAR_0 = "eu.etaxonomy.taxeditor.workbench.menu.toolbar.0";
+       public static final String TRIMCONTRIBUTION_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_TRIMCONTRIBUTION_0 = "eu.etaxonomy.taxeditor.workbench.trimcontribution.0";
+}
\ No newline at end of file
@@ -1,40 +1,34 @@
 /**
 * Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
 
-package eu.etaxonomy.taxeditor;
+package eu.etaxonomy.taxeditor.workbench;
 
 import java.net.MalformedURLException;
 import java.net.URL;
 
 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.e4.core.di.annotations.Execute;
 import org.eclipse.ui.PartInitException;
 import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.browser.IWorkbenchBrowserSupport;
 
 /**
- * <p>OpenExternalAboutPlatformHandler class.</p>
- *
  * @author p.ciardelli
  * @created 04.09.2009
  * @version 1.0
  */
-public class OpenExternalAboutPlatformHandler extends AbstractHandler {
+public class OpenExternalAboutPlatformHandler {
        private static final Logger logger = Logger.getLogger(OpenExternalAboutPlatformHandler.class);
 
-       /* (non-Javadoc)
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
-        */
-       /** {@inheritDoc} */
-       public Object execute(ExecutionEvent event) throws ExecutionException {
+
+       @Execute
+       public Object execute() {
                String url = "http://wp5.e-taxonomy.eu/";
 
                try {
similarity index 69%
rename from eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/OpenExternalParserHelpHandler.java
rename to eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/OpenExternalParserHelpHandler.java
index 4af8183b05f3507694174b4ac78d20aeab7671ee..12c9abc61a7a6e13579cd815f7c0e7a81d98bc8c 100644 (file)
@@ -1,21 +1,19 @@
 /**
 * Copyright (C) 2007 EDIT
-* European Distributed Institute of Taxonomy 
+* European Distributed Institute of Taxonomy
 * http://www.e-taxonomy.eu
-* 
+*
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 * See LICENSE.TXT at the top of this package for the full license terms.
 */
 
-package eu.etaxonomy.taxeditor;
+package eu.etaxonomy.taxeditor.workbench;
 
 import java.net.MalformedURLException;
 import java.net.URL;
 
 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.e4.core.di.annotations.Execute;
 import org.eclipse.ui.PartInitException;
 import org.eclipse.ui.PlatformUI;
 import org.eclipse.ui.browser.IWorkbenchBrowserSupport;
@@ -27,14 +25,12 @@ import org.eclipse.ui.browser.IWorkbenchBrowserSupport;
  * @created 04.09.2009
  * @version 1.0
  */
-public class OpenExternalParserHelpHandler extends AbstractHandler {
+public class OpenExternalParserHelpHandler {
        private static final Logger logger = Logger.getLogger(OpenExternalParserHelpHandler.class);
 
-       /* (non-Javadoc)
-        * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
-        */
+       @Execute
        /** {@inheritDoc} */
-       public Object execute(ExecutionEvent event) throws ExecutionException {
+       public Object execute() {
                String url = "http://dev.e-taxonomy.eu/trac/wiki/NameParserDocumentation";
 
                try {
diff --git a/eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/OpenPartHandler.java b/eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/OpenPartHandler.java
new file mode 100644 (file)
index 0000000..a9079db
--- /dev/null
@@ -0,0 +1,30 @@
+
+package eu.etaxonomy.taxeditor.workbench;
+
+import java.util.Map;
+
+import org.eclipse.core.commands.ParameterizedCommand;
+import org.eclipse.e4.core.di.annotations.CanExecute;
+import org.eclipse.e4.core.di.annotations.Execute;
+import org.eclipse.e4.ui.workbench.modeling.EPartService;
+import org.eclipse.e4.ui.workbench.modeling.EPartService.PartState;
+
+public class OpenPartHandler {
+
+    @Execute
+    public void execute(ParameterizedCommand commandParameters, EPartService partService) {
+
+        if (null == commandParameters) {
+            return;
+        }
+        Map parameterMap = commandParameters.getParameterMap();
+        String partId = parameterMap.get(AppModelId.COMMANDPARAMETER_EU_ETAXONOMY_TAXEDITOR_WORKBENCH_COMMANDPARAMETER_PARTNAME).toString();
+        partService.showPart(partId, PartState.ACTIVATE);
+    }
+
+    @CanExecute
+    public boolean canExecute() {
+        return true;
+    }
+
+}
\ No newline at end of file
@@ -4,18 +4,18 @@
  *  are made available under the terms of the Eclipse Public License v1.0
  *  which accompanies this distribution, and is available at
  *  http://www.eclipse.org/legal/epl-v10.html
- * 
+ *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
-package eu.etaxonomy.taxeditor.update;
+package eu.etaxonomy.taxeditor.workbench.update;
 
 import org.eclipse.core.runtime.jobs.Job;
 import org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob;
 
 /**
  * InstallNewSoftwareHandler invokes the install wizard
- * 
+ *
  * @since 3.5
  */
 public class InstallNewSoftwareHandler extends PreloadingRepositoryHandler {
@@ -27,19 +27,22 @@ public class InstallNewSoftwareHandler extends PreloadingRepositoryHandler {
                super();
        }
 
-       protected void doExecute(LoadMetadataRepositoryJob job) {
+       @Override
+    protected void doExecute(LoadMetadataRepositoryJob job) {
                getProvisioningUI().openInstallWizard(null, null, job);
        }
 
-       protected boolean waitForPreload() {
+       @Override
+    protected boolean waitForPreload() {
                // If the user cannot see repositories, then we may as well wait
-               // for existing repos to load so that content is available.  
-               // If the user can manipulate the repositories, then we don't wait, 
+               // for existing repos to load so that content is available.
+               // If the user can manipulate the repositories, then we don't wait,
                // because we don't know which ones they want to work with.
                return !getProvisioningUI().getPolicy().getRepositoriesVisible();
        }
 
-       protected void setLoadJobProperties(Job loadJob) {
+       @Override
+    protected void setLoadJobProperties(Job loadJob) {
                super.setLoadJobProperties(loadJob);
                // If we are doing a background load, we do not wish to authenticate, as the
                // user is unaware that loading was needed
@@ -8,13 +8,12 @@
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
-package eu.etaxonomy.taxeditor.update;
+package eu.etaxonomy.taxeditor.workbench.update;
 
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
 import org.eclipse.core.runtime.jobs.IJobChangeEvent;
 import org.eclipse.core.runtime.jobs.Job;
 import org.eclipse.core.runtime.jobs.JobChangeAdapter;
+import org.eclipse.e4.core.di.annotations.Execute;
 import org.eclipse.equinox.p2.ui.LoadMetadataRepositoryJob;
 import org.eclipse.equinox.p2.ui.ProvisioningUI;
 import org.eclipse.swt.widgets.Shell;
@@ -23,10 +22,10 @@ import org.eclipse.ui.PlatformUI;
 /**
  * PreloadingRepositoryHandler provides background loading of
  * repositories before executing the provisioning handler.
- * 
+ *
  * @since 3.5
  */
-abstract class PreloadingRepositoryHandler extends AbstractHandler {
+abstract class PreloadingRepositoryHandler{
 
        /**
         * The constructor.
@@ -38,12 +37,13 @@ abstract class PreloadingRepositoryHandler extends AbstractHandler {
        /**
         * Execute the command.
         */
-       public Object execute(ExecutionEvent event) {
+       @Execute
+       public Object execute() {
                doExecuteAndLoad();
                return null;
        }
 
-       void doExecuteAndLoad() {
+       private void doExecuteAndLoad() {
                if (preloadRepositories()) {
                        //cancel any load that is already running
                        Job.getJobManager().cancel(LoadMetadataRepositoryJob.LOAD_FAMILY);
@@ -51,15 +51,18 @@ abstract class PreloadingRepositoryHandler extends AbstractHandler {
                        setLoadJobProperties(loadJob);
                        if (waitForPreload()) {
                                loadJob.addJobChangeListener(new JobChangeAdapter() {
-                                       public void done(IJobChangeEvent event) {
-                                               if (PlatformUI.isWorkbenchRunning())
-                                                       if (event.getResult().isOK()) {
+                                       @Override
+                    public void done(IJobChangeEvent event) {
+                                               if (PlatformUI.isWorkbenchRunning()) {
+                            if (event.getResult().isOK()) {
                                                                PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() {
-                                                                       public void run() {
+                                                                       @Override
+                                    public void run() {
                                                                                doExecute(loadJob);
                                                                        }
                                                                });
                                                        }
+                        }
                                        }
                                });
                                loadJob.setUser(true);
similarity index 97%
rename from eu.etaxonomy.taxeditor.application/src/main/java/eu/etaxonomy/taxeditor/update/UpdateHandler.java
rename to eu.etaxonomy.taxeditor.workbench/src/main/java/eu/etaxonomy/taxeditor/workbench/update/UpdateHandler.java
index a835cdc5c2b0eb65e778fcc88b6bfabd9cbe2aaa..d4327bf3fb98b736257132f018709bcaeadb79a7 100644 (file)
@@ -8,7 +8,7 @@
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
-package eu.etaxonomy.taxeditor.update;
+package eu.etaxonomy.taxeditor.workbench.update;
 
 import org.eclipse.equinox.internal.p2.ui.dialogs.UpdateSingleIUWizard;
 import org.eclipse.equinox.p2.operations.RepositoryTracker;
index b29156309bfb196a62dca218c186283fef31eef6..405a7c137c2434931438e6ed4acf400871e7aae8 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<?pde version="3.5"?><product application="eu.etaxonomy.taxeditor.application.application" id="eu.etaxonomy.taxeditor.application.eu_etaxonomy_taxeditor_product" includeLaunchers="true" name="EDIT Taxonomic Editor" uid="eu.etaxonomy.taxeditor.product" useFeatures="true" version="4.6.0">
+<?pde version="3.5"?><product application="eu.etaxonomy.taxeditor.application.application" id="eu.etaxonomy.taxeditor.application.eu_etaxonomy_taxeditor_product" includeLaunchers="true" name="EDIT Taxonomic Editor" uid="eu.etaxonomy.taxeditor.product" useFeatures="true" version="4.7.0">
   <aboutInfo>
     <image path="/eu.etaxonomy.taxeditor.application/icons/256color_48x48.gif"/>
     <text>
index 857b82ad48be1b50b30a8626374cb84506ab26fb..324b4569499f5d30af8c3cd7f405d07905963dbb 100644 (file)
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?pde version="3.5"?>
 
-<product name="EDIT Taxonomic Editor" uid="eu.etaxonomy.taxeditor.product.jre" id="eu.etaxonomy.taxeditor.application.eu_etaxonomy_taxeditor_product" application="eu.etaxonomy.taxeditor.application.application" version="4.6.0" useFeatures="true" includeLaunchers="true">
+<product name="EDIT Taxonomic Editor" uid="eu.etaxonomy.taxeditor.product.jre" id="eu.etaxonomy.taxeditor.application.eu_etaxonomy_taxeditor_product" application="eu.etaxonomy.taxeditor.application.application" version="4.7.0" useFeatures="true" includeLaunchers="true">
 
    <aboutInfo>
       <image path="/eu.etaxonomy.taxeditor.application/icons/256color_48x48.gif"/>
index 7ddcf330f906dc1ff057a0f8daafc76f52b109c5..b8f919201a8208796f07018209c7e95292a8cef2 100644 (file)
@@ -2,7 +2,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>4.6.0</version>
+    <version>4.7.0</version>
   </parent>
 
   <modelVersion>4.0.0</modelVersion>
index 870c330f0ba596072af4ed4437fd08ed081b027b..a85e22a16909f98d003105e88b2cff847371d0a5 100644 (file)
@@ -1,31 +1,64 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>\r
-<?pde version="3.8"?><target name="Eclipse Indigo Target" sequenceNumber="8">\r
-<locations>\r
-<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">\r
-<unit id="org.eclipse.swtbot.eclipse.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>\r
-<unit id="org.eclipse.swtbot.eclipse.gef.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>\r
-<unit id="org.eclipse.swtbot.ide.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>\r
-<unit id="org.eclipse.swtbot.eclipse.test.junit4.feature.group" version="2.0.5.20111003_1754-3676ac8-dev-e36"/>\r
-<repository location="http://download.eclipse.org/technology/swtbot/helios/dev-build/update-site"/>\r
-</location>\r
-<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">\r
-<unit id="org.eclipse.jdt.feature.group" version="3.7.2.v20120120-1414-7z8gFcuFMP7BW5XTz0jLTnz0l9B1"/>\r
-<unit id="org.eclipse.pde.source.feature.group" version="3.7.2.v20120120-1420-7b7rFUOFEx2Xnqafnpz0E--0"/>\r
-<unit id="org.eclipse.platform.feature.group" version="3.7.2.v20120207-1839-9gF7UHPDFxGjd-PqDr2jX_4yKaumkoHTz04_q-q"/>\r
-<unit id="org.eclipse.equinox.executable.feature.group" version="3.5.1.v20111216-1653-7P7NFUIFIbaUcU77s0KQWHw5HZTZ"/>\r
-<unit id="org.eclipse.platform.source.feature.group" version="3.7.2.v20120207-1839-9gF7UHPDFxGjd-PqDr2jX_4yKaumkoHTz04_q-q"/>\r
-<unit id="org.eclipse.platform.sdk" version="3.7.2.M20120208-0800"/>\r
-<unit id="org.eclipse.rcp.feature.group" version="3.7.2.v20120120-1424-9DB5FmnFq5JCf1UA38R-kz0S0272"/>\r
-<unit id="org.eclipse.rcp.source.feature.group" version="3.7.2.v20120120-1424-9DB5FmnFq5JCf1UA38R-kz0S0272"/>\r
-<unit id="org.eclipse.rcp.sdk.id" version="3.7.2.M20120208-0800"/>\r
-<unit id="org.eclipse.equinox.sdk.feature.group" version="3.7.1.R37x_v20110907-7M7W8i8eNV4WsRkue-4Vq4J6pCyW"/>\r
-<unit id="org.eclipse.zest.sdk.feature.group" version="1.3.0.v20110425-2050-67C18COMPIAKSVKGQaRTQTiSN8WP"/>\r
-<unit id="org.eclipse.pde.feature.group" version="3.7.2.v20120120-1420-7b7rFUOFEx2Xnqafnpz0E--0"/>\r
-<repository location="http://download.eclipse.org/releases/indigo/"/>
-</location>\r
-<location includeAllPlatforms="true" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">\r
-<unit id="org.eclipse.nebula.widgets.compositetable.feature.feature.group" version="1.0.0.201409040043"/>\r
-<repository location="http://archive.eclipse.org/nebula/Q32014/release/"/>\r
-</location>\r
-</locations>\r
-</target>\r
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde version="3.8"?><target includeMode="feature" name="Eclipse Indigo Target" sequenceNumber="36">
+<locations>
+<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.nebula.widgets.compositetable.feature.feature.group" version="1.0.0.201703081533"/>
+<repository location="http://download.eclipse.org/nebula/releases/latest"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.e4.core.tools.feature.source.feature.group" version="4.5.100.v20170131-1452"/>
+<unit id="org.eclipse.equinox.p2.user.ui.source.feature.group" version="2.2.203.v20170131-1444"/>
+<unit id="org.eclipse.e4.rcp.feature.group" version="1.5.3.v20170228-0512"/>
+<unit id="org.eclipse.equinox.executable.feature.group" version="3.6.300.v20161122-1740"/>
+<unit id="org.eclipse.swtbot.forms.feature.group" version="2.5.0.201609021837"/>
+<unit id="org.eclipse.help.feature.group" version="2.2.2.v20170301-0400"/>
+<unit id="org.eclipse.e4.core.tools.feature.feature.group" version="4.5.100.v20170131-1452"/>
+<unit id="org.eclipse.e4.rcp.source.feature.group" version="1.5.3.v20170228-0512"/>
+<unit id="org.eclipse.sdk.ide" version="4.6.3.M20170301-0400"/>
+<unit id="epp.package.modeling" version="4.6.3.20170314-1500"/>
+<unit id="org.eclipse.platform.sdk" version="4.6.3.M20170301-0400"/>
+<unit id="org.eclipse.jdt.feature.group" version="3.12.3.v20170301-0400"/>
+<unit id="org.eclipse.pde.source.feature.group" version="3.12.3.v20170301-0400"/>
+<unit id="org.eclipse.core.runtime.feature.feature.group" version="1.1.203.v20170209-1843"/>
+<unit id="org.eclipse.pde.feature.group" version="3.12.3.v20170301-0400"/>
+<unit id="org.eclipse.rcp.sdk.id" version="4.6.3.M20170301-0400"/>
+<unit id="org.eclipse.swtbot.eclipse.feature.group" version="2.5.0.201609021837"/>
+<unit id="org.eclipse.platform.feature.group" version="4.6.3.v20170301-0400"/>
+<repository location="http://download.eclipse.org/releases/neon"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.zest.sdk.feature.group" version="1.7.0.201606061308"/>
+<repository location="http://download.eclipse.org/releases/neon"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.oomph.setup.sdk.feature.group" version="1.7.0.v20170305-1123"/>
+<repository location="http://download.eclipse.org/releases/neon"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.equinox.sdk.feature.group" version="3.12.0.v20170209-1843"/>
+<unit id="org.eclipse.equinox.p2.rcp.feature.feature.group" version="1.2.203.v20170131-1444"/>
+<unit id="org.eclipse.equinox.p2.extras.feature.feature.group" version="1.2.203.v20170131-1444"/>
+<unit id="org.eclipse.equinox.serverside.sdk.feature.group" version="3.12.3.v20170209-1843"/>
+<unit id="org.eclipse.equinox.compendium.sdk.feature.group" version="3.12.0.v20160815-1406"/>
+<unit id="org.eclipse.equinox.core.sdk.feature.group" version="3.12.3.v20170209-1843"/>
+<unit id="org.eclipse.equinox.core.feature.feature.group" version="1.3.3.v20170209-1843"/>
+<unit id="org.eclipse.equinox.p2.core.feature.feature.group" version="1.3.203.v20170131-1444"/>
+<unit id="org.eclipse.equinox.p2.rcp.feature.source.feature.group" version="1.2.203.v20170131-1444"/>
+<unit id="org.eclipse.equinox.p2.core.feature.source.feature.group" version="1.3.203.v20170131-1444"/>
+<unit id="org.eclipse.equinox.p2.sdk.feature.group" version="3.9.203.v20170131-1444"/>
+<unit id="org.eclipse.objectteams.otequinox.feature.group" version="2.5.2.201612071657"/>
+<unit id="org.eclipse.equinox.p2.extras.feature.source.feature.group" version="1.2.203.v20170131-1444"/>
+<repository location="http://download.eclipse.org/releases/neon"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.emf.ecore.xcore.sdk.feature.group" version="1.4.0.v20160526-0606"/>
+<unit id="org.eclipse.emf.ecore.feature.group" version="2.12.0.v20160420-0247"/>
+<unit id="org.eclipse.emf.ecore.xcore.lib.feature.group" version="1.2.100.v20160526-0606"/>
+<unit id="org.eclipse.emf.sdk.feature.group" version="2.12.0.v20160526-0356"/>
+<unit id="org.eclipse.emf.common.feature.group" version="2.12.0.v20160420-0247"/>
+<unit id="org.eclipse.emf.ecore.xcore.feature.group" version="1.4.0.v20160526-0606"/>
+<unit id="org.eclipse.emf.feature.group" version="2.12.0.v20160526-0356"/>
+<repository location="http://download.eclipse.org/releases/neon"/>
+</location>
+</locations>
+</target>
diff --git a/pom.xml b/pom.xml
index ea7cc8ec6365475c1bbdbb48fd06a4869c7e941a..4307f545ff1ddd4c65080ad4c560258c7d71e0a2 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -6,31 +6,33 @@
   </prerequisites>
   <groupId>eu.etaxonomy</groupId>
   <artifactId>taxeditor-parent</artifactId>
-  <version>4.6.0</version>
+  <version>4.7.0</version>
   <name>EDIT Taxonomic Editor</name>
   <description>The Taxonomic Editor for EDIT's platform for
     cybertaxonomy
   </description>
-  <url>http://cybertaxonomy.eu/taxeditor//taxeditor//taxeditor//taxeditor//taxeditor//taxeditor//taxeditor/
+  <url>https://cybertaxonomy.eu/taxeditor
   </url>
   <inceptionYear>2007</inceptionYear>
   <packaging>pom</packaging>
   <properties>
     <java.codelevel>1.8</java.codelevel>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-    <cdmlib.version>4.6.0</cdmlib.version>
+    <cdmlib.version>4.7.0</cdmlib.version>
     <!-- TODO can we use project.version ????? -->
     <!-- Increasing tycho above 0.22.0 will fail for the macosx build because 
       for higher version numbers tycho needs to be build against Eclipse Mars or 
       higher -->
-    <tycho.version>0.22.0</tycho.version>
-    <taxeditor.version>4.6.0</taxeditor.version>
+    <tycho.version>1.0.0</tycho.version>
+    <taxeditor.version>4.7.0</taxeditor.version>
     <update.dir>snapshot</update.dir>
     <unitils.version>3.4.2</unitils.version>
     <log4j.version>1.2.17</log4j.version>
+    <javadoc.opts>-Xdoclint:none</javadoc.opts>
   </properties>
   <modules>
     <module>eu.etaxonomy.taxeditor.cdmlib</module>
+    <module>eu.etaxonomy.taxeditor.workbench</module>
     <module>eu.etaxonomy.taxeditor.store</module>
     <module>eu.etaxonomy.taxeditor.navigation</module>
     <module>eu.etaxonomy.taxeditor.editor</module>
@@ -43,7 +45,6 @@
     <module>eu.etaxonomy.taxeditor.application</module>
     <module>eu.etaxonomy.taxeditor.feature.platform</module>
     <module>eu.etaxonomy.taxeditor.feature</module>
-    <module>eu.etaxonomy.taxeditor.feature.jre.linux64</module>
     <module>eu.etaxonomy.taxeditor</module>
     <module>eu.etaxonomy.taxeditor.test</module>
   </modules>
     </developer>
   </developers>
   <issueManagement>
-    <system>Trac</system>
+    <system>Redmine</system>
     <url>https://dev.e-taxonomy.eu/redmine/projects/edit/</url>
   </issueManagement>
   <ciManagement>
     <!-- the cdm internal repository -->
     <repository>
       <id>EditRepository</id>
-      <url>http://wp5.e-taxonomy.eu/mavenrepo/</url>
+      <url>http://cybertaxonomy.eu/mavenrepo/</url>
     </repository>
     <repository>
       <id>eclipse-indigo</id>
       <layout>p2</layout>
-      <url>http://download.eclipse.org/technology/swtbot/helios/dev-build/update-site/
-      </url>
+      <url>http://download.eclipse.org/technology/swtbot/snapshots/</url>
     </repository>
     <!-- The nebula repository (retention period 2 years starting Q32014) 
       set here is an archived one so as to have a stable version of the jar when 
     <repository>
       <id>eclipse-nebula</id>
       <layout>p2</layout>
-      <url>http://archive.eclipse.org/nebula/Q32014/release/</url>
+      <url>http://download.eclipse.org/nebula/releases/latest</url>
     </repository>
     <repository>
-      <id>eclipse-swtbot</id>
+      <id>eclipse-neon</id>
       <layout>p2</layout>
-      <url>http://download.eclipse.org/releases/indigo/</url>
+      <url>http://download.eclipse.org/releases/neon/</url>
     </repository>
   </repositories>
+  <pluginRepositories>
+    <pluginRepository>
+      <!-- required for the plugin dependency cdmlib-db of the jetty-maven-plugin -->
+      <id>EditRepository</id>
+      <url>http://cybertaxonomy.eu/mavenrepo/</url>
+    </pluginRepository>
+  </pluginRepositories>
   <build>
     <plugins>
       <plugin>
           <target>${java.codelevel}</target>
         </configuration>
       </plugin>
+      <plugin>
+        <groupId>org.codehaus.mojo</groupId>
+        <artifactId>wagon-maven-plugin</artifactId>
+        <version>1.0</version>
+        <configuration>
+          <url>scpexe://cybertaxonomy.eu</url>
+          <serverId>cybertaxonomy.eu</serverId>
+        </configuration>
+        <executions>
+          <execution>
+            <id>upload-reference-documentation</id>
+            <phase>site-deploy</phase>
+            <goals>
+              <goal>upload</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-surefire-plugin</artifactId>
         <version>3.3</version>
         <configuration>
           <locales>en</locales>
+          <outputEncoding>UTF-8</outputEncoding>
+          <!-- chmod: not not use chmod, rather adapt the umask of the user 
+            at the server to which the site is deployed -->
+          <chmod>false</chmod>
         </configuration>
       </plugin>
       <plugin>
           <quiet>true</quiet>
           <detectLinks>true</detectLinks>
           <failOnError>false</failOnError>
+          <additionalparam>${javadoc.opts}</additionalparam>
         </configuration>
         <executions>
           <execution>
       <extension>
         <groupId>org.apache.maven.wagon</groupId>
         <artifactId>wagon-scm</artifactId>
-        <version>1.0-alpha-5</version>
+        <version>1.0-beta-6</version>
       </extension>
       <extension>
         <groupId>org.apache.maven.wagon</groupId>
         <artifactId>wagon-ssh</artifactId>
-        <version>1.0-beta-7</version>
+        <version>1.0-beta-6</version>
       </extension>
       <extension>
         <groupId>org.apache.maven.wagon</groupId>
         <version>2.7</version>
         <configuration>
           <detectLinks>true</detectLinks>
+          <additionalparam>${javadoc.opts}</additionalparam>
         </configuration>
       </plugin>
       <plugin>
   <!-- DISTRIBUTION MANAGEMENT -->
   <distributionManagement>
     <site>
-      <id>wp5.e-taxonomy.eu</id>
+      <id>cybertaxonomy.eu</id>
       <name>EDIT Taxonomic Editor</name>
-      <url>scpexe://wp5.e-taxonomy.eu/var/www/wp5.e-taxonomy.eu/taxeditor/
+      <url>scpexe://cybertaxonomy.eu/var/www/wp5.e-taxonomy.eu/taxeditor/
       </url>
     </site>
     <repository>
       <uniqueVersion>false</uniqueVersion>
-      <id>wp5.e-taxonomy.eu</id>
+      <id>cybertaxonomy.eu</id>
       <name>Edit Maven Repository</name>
-      <url>scpexe://wp5.e-taxonomy.eu/var/www/wp5.e-taxonomy.eu/mavenrepo/
+      <url>scpexe://cybertaxonomy.eu/var/www/wp5.e-taxonomy.eu/mavenrepo/
       </url>
     </repository>
   </distributionManagement>
+  <dependencyManagement>
+    <dependencies>
+      <dependency>
+        <groupId>com.itextpdf</groupId>
+        <artifactId>itextpdf</artifactId>
+        <version>5.5.8</version>
+      </dependency>
+    </dependencies>
+  </dependencyManagement>
 </project>