Merge branch 'master' of wp5.e-taxonomy.eu:/var/git/taxeditor into remoting-4.0
authorCherian Mathew <c.mathew@bgbm.org>
Fri, 5 Jun 2015 11:23:02 +0000 (13:23 +0200)
committerCherian Mathew <c.mathew@bgbm.org>
Fri, 5 Jun 2015 11:23:02 +0000 (13:23 +0200)
Conflicts:
.gitattributes
eu.etaxonomy.taxeditor.cdmlib/.classpath
eu.etaxonomy.taxeditor.cdmlib/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInput.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/key/polytomous/operation/DeleteOperation.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/ChangeAcceptedTaxonToSynonymOperation.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/DeleteOperation.java
eu.etaxonomy.taxeditor.store/plugin.xml
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/store/CdmStoreConnector.java

25 files changed:
1  2 
.gitattributes
eu.etaxonomy.taxeditor.cdmlib/.classpath
eu.etaxonomy.taxeditor.cdmlib/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.cdmlib/build.properties
eu.etaxonomy.taxeditor.cdmlib/pom.xml
eu.etaxonomy.taxeditor.cdmlib/src/main/resources/webapp/cdmlib-remote-webapp.war
eu.etaxonomy.taxeditor.editor/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/TaxonEditorInput.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/key/polytomous/operation/DeleteNodeOperation.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientAgentService.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientClassificationService.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientCollectionService.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientDescriptionService.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientNameService.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientOccurenceService.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientReferenceService.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientTaxonService.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientTermService.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/key/polytomous/operation/DeleteOperation.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/ChangeAcceptedTaxonToSynonymOperation.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/navigator/operation/DeleteOperation.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewTaxonNodeWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/store/CdmStoreConnector.java
eu.etaxonomy.taxeditor/pom.xml
pom.xml

diff --combined .gitattributes
index e9ce314b7ac9e76219c6f4ff49a1dc1994019b37,e6bb9df13a99bf906f9bb0b0bf78c8ce9ee2a42f..567745fa5e74ebc9de6f4513e4930b6fb1d4e56a
@@@ -142,7 -142,9 +142,7 @@@ eu.etaxonomy.taxeditor.cdmlib/build.pro
  eu.etaxonomy.taxeditor.cdmlib/lib/activation-1.1.1.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/antlr-2.7.7.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/aopalliance-1.0.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/aspectjrt-1.7.1-sources.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/aspectjrt-1.7.1.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/aspectjweaver-1.7.1-sources.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/aspectjweaver-1.7.1.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/avro-1.6.3.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/batik-anim-1.7.jar -text
@@@ -304,11 -306,15 +304,11 @@@ eu.etaxonomy.taxeditor.cdmlib/lib/sprin
  eu.etaxonomy.taxeditor.cdmlib/lib/stax-1.2.0.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/stax-api-1.0.1.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/swagger-annotations-1.3.5.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-core-3.3.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-database-3.3.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-dbmaintainer-3.3.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-dbunit-3.3.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-easymock-3.3.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-inject-3.3.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-mock-3.3.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-orm-3.3.jar -text
 -eu.etaxonomy.taxeditor.cdmlib/lib/unitils-spring-3.3.jar -text
 +eu.etaxonomy.taxeditor.cdmlib/lib/unitils-core-3.4.2.jar -text
 +eu.etaxonomy.taxeditor.cdmlib/lib/unitils-database-3.4.2.jar -text
 +eu.etaxonomy.taxeditor.cdmlib/lib/unitils-dbmaintainer-3.4.2.jar -text
 +eu.etaxonomy.taxeditor.cdmlib/lib/unitils-dbunit-3.4.2.jar -text
 +eu.etaxonomy.taxeditor.cdmlib/lib/unitils-spring-3.4.2.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/usertype.jodatime-2.0.1.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/usertype.spi-2.0.1.jar -text
  eu.etaxonomy.taxeditor.cdmlib/lib/validation-api-1.0.0.GA.jar -text
@@@ -331,57 -337,22 +331,57 @@@ eu.etaxonomy.taxeditor.cdmlib/lib/yjp-c
  eu.etaxonomy.taxeditor.cdmlib/pom.xml -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteConfiguration.java -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteController.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/application/RemotingMonitoredGenericApplicationContext.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/application/RemotingMonitoredListableBeanFactory.java -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/cache/CdmServiceCacher.java -text
 -eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/api/lazyloading/CdmLazyLoader.java -text
 -eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/remote/CdmPersistentRemoteSource.java -text
 -eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSource.java -text
 -eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceBase.java -text
 -eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceException.java -text
 -eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/cdm/remote/ICdmRemoteSource.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/CdmEagerLoadingException.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/CdmRemotingException.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/CacheLoader.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/CdmClientCacheException.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/CdmEntityCacheKey.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/CdmModelCacher.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/CdmModelFieldPropertyFromClass.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/CdmRemoteCacheManager.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/CdmTransientEntityCacher.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/EntityCacherDebugResult.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/cache/ProxyUtils.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/server/CDMServerException.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/source/CdmPersistentRemoteSource.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/source/CdmRemoteSource.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/source/CdmRemoteSourceBase.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/source/CdmRemoteSourceException.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/source/CdmServerInfo.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/remoting/source/ICdmRemoteSource.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/CachedCommonServiceImpl.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/CdmAuthenticatedHttpInvokerRequestExecutor.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/CdmServiceInterceptorException.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/CdmServiceRequestExecutor.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/ICachedCommonService.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/service/TermServiceRequestExecutor.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmClientSessionException.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySession.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionManager.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySession.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySessionEnabled.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySessionManager.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/ICdmEntitySessionManagerObserver.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/mock/MockCdmEntitySession.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/java/eu/etaxonomy/taxeditor/session/mock/MockCdmEntitySessionManager.java -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/java/org/hibernate/collection/internal/AbstractPersistentCollection.java -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/java/org/hibernate/proxy/AbstractLazyInitializer.java -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/resources/cdmlib-ehcache.xml -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/resources/etc/jetty/.svnignore -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/resources/etc/jetty/cdmlib-remote-webapp.war -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/resources/etc/jetty/jetty-runner-9.2.3.v20140905.jar -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/resources/etc/jetty/start-9.2.3.v20140905.jar -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/resources/eu/etaxonomy/cdm/config.properties -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/resources/eu/etaxonomy/cdm/httpInvokerServiceClients.xml -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/resources/eu/etaxonomy/cdm/localApplicationContext.xml -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/resources/eu/etaxonomy/cdm/mappings/hibernate.cfg.xml -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/resources/eu/etaxonomy/cdm/remotingApplicationContext.xml -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/resources/eu/etaxonomy/cdm/remoting_persistence_security.xml -text
  eu.etaxonomy.taxeditor.cdmlib/src/main/resources/eu/etaxonomy/cdm/remoting_services_security.xml -text
 -eu.etaxonomy.taxeditor.cdmlib/src/test/resources/eu/etaxonomy/cdm/datasources/cdm.datasources.xml -text
 +eu.etaxonomy.taxeditor.cdmlib/src/main/resources/log4j.properties -text
  eu.etaxonomy.taxeditor.editor/.classpath -text
  eu.etaxonomy.taxeditor.editor/.project -text
  eu.etaxonomy.taxeditor.editor/META-INF/MANIFEST.MF -text
@@@ -403,7 -374,6 +403,7 @@@ eu.etaxonomy.taxeditor.editor/p2.inf -t
  eu.etaxonomy.taxeditor.editor/plugin.xml -text
  eu.etaxonomy.taxeditor.editor/pom.xml -text
  eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/CdmDataTransfer.java -text
 +eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/CdmEntitySessionInput.java -text
  eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/ChooseFromMultipleTaxonNodesDialog.java -text
  eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorCdmViewer.java -text
  eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/EditorStateManager.java -text
@@@ -979,6 -949,7 +979,7 @@@ eu.etaxonomy.taxeditor.navigation/icons
  eu.etaxonomy.taxeditor.navigation/p2.inf -text
  eu.etaxonomy.taxeditor.navigation/plugin.xml -text
  eu.etaxonomy.taxeditor.navigation/pom.xml -text
+ eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/NavigationCdmViewer.java -text
  eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/NavigationUtil.java -text
  eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/NavigatorStateManager.java -text
  eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/RecentNamesContributionItem.java -text
@@@ -1291,10 -1262,9 +1292,14 @@@ eu.etaxonomy.taxeditor.store/src/main/j
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/SelectFeatureTreeWizard.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/featuretree/SelectFeatureTreeWizardPage.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenDistributionEditorWizardHandler.java -text
++<<<<<<< HEAD
 +eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenInspectSessionsHandler.java -text
++=======
+ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenHandler.java -text
++>>>>>>> 02176688eaa23a31ff5b71c317cb5ee685483aa4
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/OpenPasswordWizzardHandler.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/ShowLoginWindowHandler.java -text
 +eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/handler/ShowRemotingLoginWindowHandler.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/identificationkey/AbstractIdentificaitonKeyWizard.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractIOManager.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ExportManager.java -text
@@@ -1367,6 -1337,7 +1372,7 @@@ eu.etaxonomy.taxeditor.store/src/main/j
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/AbstractNewEntityWizard.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/AmplificationGeneralWizardPage.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/ExternalReferenceServiceWizardPage.java -text
+ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/IWizardPageListener.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewAmplificationWizard.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewClassificationWizard.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/newWizard/NewCollectionWizard.java -text
@@@ -1390,6 -1361,7 +1396,6 @@@ eu.etaxonomy.taxeditor.store/src/main/j
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/operation/AbstractPostOperation.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/operation/AbstractPostTaxonOperation.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/operation/IPostOperationEnabled.java -text
 -eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/parser/MatchStrategyConfigurator.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/parser/ParseHandler.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CdmPreferences.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/preference/CdmStorePropertyTester.java -text
@@@ -1461,7 -1433,6 +1467,7 @@@ eu.etaxonomy.taxeditor.store/src/main/j
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/combo/VocabularyComboElement.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/DefaultLanguageDialog.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/LoginDialog.java -text
 +eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/RemotingLoginDialog.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/UriDialog.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/deleteConfigurator/DeleteConfiguratorComposite.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/deleteConfigurator/DeleteConfiguratorDialog.java -text
@@@ -1612,7 -1583,6 +1618,6 @@@ eu.etaxonomy.taxeditor.store/src/main/j
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/ScopeSection.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/StateDataElement.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/StateDataSection.java -text
- eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/StateModifierElement.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/StatisticalMeasurementValueElement.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/StatisticalMeasurementValueSection.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/description/detail/AbstractDetailedDescriptionDetailElement.java -text
@@@ -1804,7 -1774,8 +1809,8 @@@ eu.etaxonomy.taxeditor.store/src/main/j
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/NamedAreaDetailElement.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/NamedAreaDetailSection.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/NamedAreaLevelDetailSection.java -text
- eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/StateModifierCollectionSection.java -text
+ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/RecommendedModifierVocabulariesCollectionSection.java -text
+ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/RecommendedModifierVocabulariesElement.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/StateVocabularyCollectionElement.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/StateVocabularyCollectionSection.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/vocabulary/StatisticalMeasureCollectionElement.java -text
@@@ -1851,8 -1822,6 +1857,8 @@@ eu.etaxonomy.taxeditor.store/src/main/j
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewPart.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewer.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/reporting/ReportingViewPart.java -text
 +eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/sessions/InspectSessionsDialog.java -text
 +eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/sessions/SessionsViewPart.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenProviderSelectionComposite.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenProviderSelectionController.java -text
  eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenSearchComposite.java -text
@@@ -1886,56 -1855,14 +1892,56 @@@ eu.etaxonomy.taxeditor.test/.settings/o
  eu.etaxonomy.taxeditor.test/META-INF/MANIFEST.MF -text
  eu.etaxonomy.taxeditor.test/build.properties -text
  eu.etaxonomy.taxeditor.test/ide/eclipse/EDITor[!!-~]Tests.launch -text
 +eu.etaxonomy.taxeditor.test/lib/byte-buddy-0.5.1.jar -text
  eu.etaxonomy.taxeditor.test/pom.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/cdmlib-ehcache.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/datasources.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/cdm/api/cache/CdmClientCachingTest.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/cdm/cdm.datasources.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/cdm/model/PolytomousKeyTest.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/cdm/model/TaxonNameEditorTest.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/cdm/model/TaxonNavigatorTest.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/cdm/testRemotingApplicationContext.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/taxeditor/lazyloading/CdmEntityCacherTest.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/eu/etaxonomy/taxeditor/remoting/session/CdmEntitySessionManagerTest.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/h2/cdmTest.h2.db -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/h2/cdmTest.trace.db -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/log4j.properties -text
  eu.etaxonomy.taxeditor.test/src/main/resources/log4j.xml -text
 +eu.etaxonomy.taxeditor.test/src/main/resources/unitils.properties -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/cdm/api/cache/CdmClientCachingTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/cdm/api/cache/CdmModelGetMethodCacherTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/cdm/model/PolytomousKeyTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/cdm/model/TaxonNameEditorTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/cdm/model/TaxonNavigatorTest.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/application/menu/general/NewMenuTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/BaseRemotingTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CDMServer.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmPersistentRemoteSourceTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmRemoteSourceTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmServerTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmServerTestManager.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/HttpInvokerServicesTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/lazyloading/CdmEntityCacherTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/lazyloading/CdmServiceCacherTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/lazyloading/RemoteLazyLoadingTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/lazyloading/RemotePersistentCollectionTest.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/navigation/navigator/contextmenu/ClassificationTest.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/newWizard/NewTaxonWizardTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/operations/OperationTestBase.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/service/ITestService.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/service/ServiceInterceptorTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/service/ServiceRebasingTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/service/TargetTestService.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/service/TestService.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/session/CdmEntitySessionManagerTest.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/session/MockSessionOwner.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/test/AbstractEditorTest.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/test/ContextMenuHelper.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/test/SwtBotUtils.java -text
 +eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/ui/dialogs/CdmServerInfoTest.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/ui/dialogs/LoginDialogTest.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/ui/selection/AbstractSelectionElementTest.java -text
  eu.etaxonomy.taxeditor.test/src/test/java/eu/etaxonomy/taxeditor/ui/selection/ClassificationSelectionElementTest.java -text
index 59e3bedb4686a5c0871ce7d5e3f0d9ba368a7f54,a13a6b099f249c51d195b2aaa3ef7522d87149e8..97d63c6713147dc89c3f20e362a022bd06c5f8be
@@@ -2,8 -2,9 +2,8 @@@
  <classpath>
        <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
        <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 -      <classpathentry kind="src" path="src/main/java"/>
 -      <classpathentry kind="src" path="src/main/resources"/>
 -      <classpathentry kind="src" path="src/test/resources"/>
 +      <classpathentry including="**/*.java" kind="src" path="src/main/java"/>
 +      <classpathentry excluding="**/*.java" 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/antlr-2.7.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/aopalliance-1.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/hibernate-c3p0-4.1.10.Final.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/hibernate-cglib-repack-2.1_3.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/hibernate-commons-annotations-4.0.1.Final.jar"/>
++<<<<<<< HEAD
 +      <classpathentry exported="true" kind="lib" path="lib/hibernate-core-4.1.10.Final.jar" sourcepath="/home/cmathew/.m2/repository/org/hibernate/hibernate-core/4.1.10.Final/hibernate-core-4.1.10.Final-sources.jar"/>
++=======
+       <classpathentry exported="true" kind="lib" path="lib/hibernate-core-4.1.10.Final.jar"/>
++>>>>>>> 02176688eaa23a31ff5b71c317cb5ee685483aa4
        <classpathentry exported="true" kind="lib" path="lib/hibernate-ehcache-4.1.10.Final.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/hibernate-entitymanager-4.1.10.Final.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/hibernate-envers-4.1.10.Final.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/org.osgi.core-1.0.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.aop-3.2.2.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.aspects-3.2.2.RELEASE.jar"/>
++<<<<<<< HEAD
 +      <classpathentry exported="true" kind="lib" path="lib/org.springframework.beans-3.2.2.RELEASE.jar" sourcepath="/home/cmathew/.m2/repository/org/springframework/org.springframework.beans/3.2.2.RELEASE/org.springframework.beans-3.2.2.RELEASE-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/org.springframework.context-3.2.2.RELEASE.jar" sourcepath="/home/cmathew/.m2/repository/org/springframework/org.springframework.context/3.2.2.RELEASE/org.springframework.context-3.2.2.RELEASE-sources.jar"/>
++=======
+       <classpathentry exported="true" kind="lib" path="lib/org.springframework.beans-3.2.2.RELEASE.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/org.springframework.context-3.2.2.RELEASE.jar"/>
++>>>>>>> 02176688eaa23a31ff5b71c317cb5ee685483aa4
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.core-3.2.2.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.expression-3.2.2.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.jdbc-3.2.2.RELEASE.jar" sourcepath="lib/org.springframework.jdbc-3.2.2.RELEASE-sources.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.oxm-3.2.2.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.test-3.2.2.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.transaction-3.2.2.RELEASE.jar" sourcepath="lib/org.springframework.transaction-3.2.2.RELEASE-sources.jar"/>
++<<<<<<< HEAD
 +      <classpathentry exported="true" kind="lib" path="lib/org.springframework.web-3.2.2.RELEASE.jar" sourcepath="/home/cmathew/.m2/repository/org/springframework/org.springframework.web/3.2.2.RELEASE/org.springframework.web-3.2.2.RELEASE-sources.jar"/>
++=======
+       <classpathentry exported="true" kind="lib" path="lib/org.springframework.web-3.2.2.RELEASE.jar"/>
++>>>>>>> 02176688eaa23a31ff5b71c317cb5ee685483aa4
        <classpathentry exported="true" kind="lib" path="lib/org.springframework.web.servlet-3.2.2.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/osgi-3.6.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/p6spy-1.3.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/spring-expression-3.2.2.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/spring-modules-cache-0.7.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/spring-security-config-3.1.3.RELEASE.jar"/>
++<<<<<<< HEAD
 +      <classpathentry exported="true" kind="lib" path="lib/spring-security-core-3.1.3.RELEASE.jar" sourcepath="/home/cmathew/.m2/repository/org/springframework/security/spring-security-core/3.1.3.RELEASE/spring-security-core-3.1.3.RELEASE-sources.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/spring-security-core-3.1.3.RELEASE.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/unitils-core-3.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-database-3.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-dbmaintainer-3.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-dbunit-3.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-easymock-3.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-inject-3.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-mock-3.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-orm-3.3.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/unitils-spring-3.3.jar"/>
++>>>>>>> 02176688eaa23a31ff5b71c317cb5ee685483aa4
        <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.0.0.GA.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/spring-security-remoting-3.1.3.RELEASE.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/jena-core-2.11.2.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/jena-iri-1.0.2.jar"/>
++<<<<<<< HEAD
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.5.2-SNAPSHOT.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.5.2-SNAPSHOT.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-3.5.2-SNAPSHOT.jar" sourcepath="lib/cdmlib-io-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.5.2-SNAPSHOT.jar" sourcepath="lib/cdmlib-model-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.5.2-SNAPSHOT.jar" sourcepath="lib/cdmlib-persistence-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.5.2-SNAPSHOT.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.5.2-SNAPSHOT.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.5.2-SNAPSHOT-sources.jar"/>
 +      <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.5.2-SNAPSHOT.jar" sourcepath="lib/cdmlib-services-3.5.2-SNAPSHOT-sources.jar"/>
++=======
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.6.1-SNAPSHOT.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.6.1-SNAPSHOT.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-3.6.1-SNAPSHOT.jar" sourcepath="lib/cdmlib-io-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.6.1-SNAPSHOT.jar" sourcepath="lib/cdmlib-model-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.6.1-SNAPSHOT.jar" sourcepath="lib/cdmlib-persistence-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-3.6.1-SNAPSHOT.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-3.6.1-SNAPSHOT.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.6.1-SNAPSHOT-sources.jar"/>
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.6.1-SNAPSHOT.jar" sourcepath="lib/cdmlib-services-3.6.1-SNAPSHOT-sources.jar"/>
++>>>>>>> 02176688eaa23a31ff5b71c317cb5ee685483aa4
        <classpathentry exported="true" kind="lib" path="lib/poi-3.10-FINAL.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/poi-ooxml-3.10-FINAL.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/xmlbeans-2.3.0.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/poi-ooxml-schemas-3.10-FINAL.jar"/>
        <classpathentry exported="true" kind="lib" path="lib/swagger-annotations-1.3.5.jar"/>
++<<<<<<< HEAD
 +      <classpathentry exported="true" kind="lib" path="lib/cdm-server-3.5.2-SNAPSHOT.jar"/>
++=======
++>>>>>>> 02176688eaa23a31ff5b71c317cb5ee685483aa4
        <classpathentry kind="output" path="target/classes"/>
  </classpath>
index 9409f988344553f11cd7c22b368815b3e245206a,3a8274a3d5c918bbb978933d67e17c2757c4db20..a5a8faa3f7a16fa1e7c5e35fe410a88c3f1c0a13
@@@ -2,16 -2,15 +2,16 @@@ Manifest-Version: 1.
  Bundle-ManifestVersion: 2
  Bundle-Name: CDM Library Dependencies Plugin
  Bundle-SymbolicName: eu.etaxonomy.taxeditor.cdmlib;singleton:=true
- Bundle-Version: 3.5.2.qualifier
+ Bundle-Version: 3.6.1.qualifier
  Eclipse-BundleShape: dir
  Export-Package: com.google.api,
   com.google.api.detect,
   com.google.api.translate,
 + eu.etaxonomy.cdm,
   eu.etaxonomy.cdm.api.application,
 + eu.etaxonomy.cdm.api.cache,
   eu.etaxonomy.cdm.api.conversation,
   eu.etaxonomy.cdm.api.facade,
 - eu.etaxonomy.cdm.api.lazyloading,
   eu.etaxonomy.cdm.api.service,
   eu.etaxonomy.cdm.api.service.config,
   eu.etaxonomy.cdm.api.service.description,
   eu.etaxonomy.cdm.persistence.dao.hibernate.occurrence,
   eu.etaxonomy.cdm.persistence.dao.hibernate.reference,
   eu.etaxonomy.cdm.persistence.dao.hibernate.taxon,
 - eu.etaxonomy.cdm.persistence.dao.hibernate.validation,
   eu.etaxonomy.cdm.persistence.dao.hibernate.view,
   eu.etaxonomy.cdm.persistence.dao.media,
   eu.etaxonomy.cdm.persistence.dao.name,
   eu.etaxonomy.cdm.print.out.pdf,
   eu.etaxonomy.cdm.print.out.taxpub,
   eu.etaxonomy.cdm.print.out.xml,
 - eu.etaxonomy.cdm.remote,
   eu.etaxonomy.cdm.remote.config,
   eu.etaxonomy.cdm.remote.controller,
   eu.etaxonomy.cdm.remote.controller.dto,
   eu.etaxonomy.cdm.validation.annotation,
   eu.etaxonomy.cdm.validation.constraint,
   eu.etaxonomy.remote.dto.rdf,
 + eu.etaxonomy.taxeditor.remoting,
 + eu.etaxonomy.taxeditor.remoting.cache,
 + eu.etaxonomy.taxeditor.remoting.server,
 + eu.etaxonomy.taxeditor.remoting.source,
 + eu.etaxonomy.taxeditor.service,
 + eu.etaxonomy.taxeditor.session,
 + eu.etaxonomy.taxeditor.session.mock,
 + javassist.util.proxy,
   javax.persistence,
   junit.framework;uses:="org.junit.runner.manipulation,org.junit.runner,org.junit.runner.notification",
 + net.sf.ehcache,
 + net.sf.ehcache.config,
 + net.sf.ehcache.statistics,
 + net.sf.ehcache.store,
   net.sf.json;uses:="net.sf.json.processors,net.sf.json.util,org.apache.commons.lang.exception",
 + org.aopalliance.aop,
   org.apache.commons.collections;uses:="org.apache.commons.collections.keyvalue,new org.apache.commons.collections",
 + org.apache.commons.dbcp,
   org.apache.commons.io;uses:="org.apache.commons.io.filefilter",
   org.apache.commons.lang;uses:="org.apache.commons.lang.exception",
 - org.apache.commons.lang.exception,
 + org.apache.commons.lang.text,
 + org.apache.commons.logging,
   org.apache.fop.apps,
   org.apache.http,
   org.apache.http.client,
 + org.apache.http.util,
   org.apache.log4j;uses:="org.apache.log4j.helpers,org.apache.log4j.or,org.apache.log4j.spi",
   org.apache.log4j.chainsaw;
    uses:="org.apache.log4j,
   org.apache.lucene.util,
   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,
   org.hibernate.annotations.common.reflection,
   org.hibernate.cache.internal,
 + org.hibernate.cfg,
   org.hibernate.classic,
   org.hibernate.collection.internal,
 + org.hibernate.collection.spi,
   org.hibernate.criterion,
 + org.hibernate.engine.internal,
 + org.hibernate.engine.spi,
 + org.hibernate.engine.transaction.spi,
   org.hibernate.envers.query.criteria,
 + org.hibernate.internal,
 + org.hibernate.internal.util,
 + org.hibernate.internal.util.collections,
 + org.hibernate.mapping,
 + org.hibernate.persister.collection,
 + org.hibernate.persister.entity,
 + org.hibernate.pretty,
 + org.hibernate.property,
   org.hibernate.proxy,
 + org.hibernate.proxy.pojo.javassist,
   org.hibernate.search,
   org.hibernate.search.spatial.impl,
 + org.hibernate.type,
   org.jadira.usertype.dateandtime.joda,
   org.jadira.usertype.dateandtime.shared.spi,
   org.jboss.logging,
   org.joda.time.format;uses:="org.joda.time",
   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.dom.element,
   org.odftoolkit.odfdom.dom.element.style,
   org.odftoolkit.odfdom.dom.style,
 + org.slf4j,
 + org.springframework.aop,
 + org.springframework.aop.framework,
 + org.springframework.beans,
   org.springframework.beans.factory,
   org.springframework.beans.factory.annotation;
    uses:="org.apache.commons.logging,
     org.springframework.beans.factory.wiring,
     org.springframework.core.type,
     org.springframework.beans.factory",
 + org.springframework.beans.factory.config,
 + org.springframework.beans.factory.support,
 + org.springframework.beans.factory.xml,
   org.springframework.cache.ehcache,
   org.springframework.context;
    uses:="org.springframework.core.io,
     org.springframework.core.io.support,
     org.springframework.beans.factory.config,
     org.springframework.beans.factory",
 + org.springframework.context.config,
   org.springframework.context.event;
    uses:="org.springframework.core,
     org.aopalliance.intercept,
     org.springframework.context,
     org.springframework.beans.factory",
 + org.springframework.context.support,
   org.springframework.core;uses:="org.springframework.util",
 + org.springframework.core.env,
   org.springframework.core.io;uses:="org.jboss.virtual",
 + org.springframework.core.io.support,
   org.springframework.core.type.classreading,
 + org.springframework.jdbc.datasource,
   org.springframework.orm.hibernate3;
    uses:="org.apache.commons.logging,
     org.aopalliance.intercept,
     org.springframework.dao,
     org.springframework.transaction.support",
   org.springframework.orm.hibernate4,
 + org.springframework.remoting,
 + org.springframework.remoting.httpinvoker,
 + org.springframework.remoting.support,
   org.springframework.security.access,
   org.springframework.security.authentication,
 + org.springframework.security.authentication.dao,
 + org.springframework.security.authentication.encoding,
   org.springframework.security.authentication.event,
 + org.springframework.security.config,
   org.springframework.security.core,
   org.springframework.security.core.context,
   org.springframework.security.core.userdetails,
     org.springframework.transaction,
     org.apache.commons.logging,
     org.springframework.beans.factory",
 + org.springframework.util,
   org.springframework.web.servlet;
    uses:="org.springframework.web.multipart,
     org.apache.commons.logging,
  Bundle-Vendor: EDIT
  Bundle-RequiredExecutionEnvironment: JavaSE-1.6
  Require-Bundle: org.eclipse.osgi,
 - org.eclipse.equinox.common
 + org.eclipse.equinox.common,
 + org.apache.commons.httpclient;bundle-version="3.1.0"
  Bundle-ClassPath: .,
   lib/activation-1.1.1.jar,
   lib/antlr-2.7.7.jar,
   lib/spring-security-core-3.1.3.RELEASE.jar,
   lib/stax-1.2.0.jar,
   lib/stax-api-1.0.1.jar,
 - lib/unitils-core-3.3.jar,
 - lib/unitils-database-3.3.jar,
 - lib/unitils-dbmaintainer-3.3.jar,
 - lib/unitils-dbunit-3.3.jar,
 - lib/unitils-easymock-3.3.jar,
 - lib/unitils-inject-3.3.jar,
 - lib/unitils-mock-3.3.jar,
 - lib/unitils-orm-3.3.jar,
 - lib/unitils-spring-3.3.jar,
   lib/usertype.jodatime-2.0.1.jar,
   lib/usertype.spi-2.0.1.jar,
   lib/validation-api-1.0.0.GA.jar,
   lib/spring-security-remoting-3.1.3.RELEASE.jar,
   lib/jena-core-2.11.2.jar,
   lib/jena-iri-1.0.2.jar,
-  lib/cdmlib-commons-3.5.2-SNAPSHOT-sources.jar,
-  lib/cdmlib-commons-3.5.2-SNAPSHOT.jar,
-  lib/cdmlib-ext-3.5.2-SNAPSHOT-sources.jar,
-  lib/cdmlib-ext-3.5.2-SNAPSHOT.jar,
-  lib/cdmlib-io-3.5.2-SNAPSHOT-sources.jar,
-  lib/cdmlib-io-3.5.2-SNAPSHOT.jar,
-  lib/cdmlib-model-3.5.2-SNAPSHOT-sources.jar,
-  lib/cdmlib-model-3.5.2-SNAPSHOT.jar,
-  lib/cdmlib-persistence-3.5.2-SNAPSHOT-sources.jar,
-  lib/cdmlib-persistence-3.5.2-SNAPSHOT.jar,
-  lib/cdmlib-print-3.5.2-SNAPSHOT-sources.jar,
-  lib/cdmlib-print-3.5.2-SNAPSHOT.jar,
-  lib/cdmlib-remote-3.5.2-SNAPSHOT-sources.jar,
-  lib/cdmlib-remote-3.5.2-SNAPSHOT.jar,
-  lib/cdmlib-services-3.5.2-SNAPSHOT-sources.jar,
-  lib/cdmlib-services-3.5.2-SNAPSHOT.jar,
+  lib/cdmlib-commons-3.6.1-SNAPSHOT-sources.jar,
+  lib/cdmlib-commons-3.6.1-SNAPSHOT.jar,
+  lib/cdmlib-ext-3.6.1-SNAPSHOT-sources.jar,
+  lib/cdmlib-ext-3.6.1-SNAPSHOT.jar,
+  lib/cdmlib-io-3.6.1-SNAPSHOT-sources.jar,
+  lib/cdmlib-io-3.6.1-SNAPSHOT.jar,
+  lib/cdmlib-model-3.6.1-SNAPSHOT-sources.jar,
+  lib/cdmlib-model-3.6.1-SNAPSHOT.jar,
+  lib/cdmlib-persistence-3.6.1-SNAPSHOT-sources.jar,
+  lib/cdmlib-persistence-3.6.1-SNAPSHOT.jar,
+  lib/cdmlib-print-3.6.1-SNAPSHOT-sources.jar,
+  lib/cdmlib-print-3.6.1-SNAPSHOT.jar,
+  lib/cdmlib-remote-3.6.1-SNAPSHOT-sources.jar,
+  lib/cdmlib-remote-3.6.1-SNAPSHOT.jar,
+  lib/cdmlib-services-3.6.1-SNAPSHOT-sources.jar,
+  lib/cdmlib-services-3.6.1-SNAPSHOT.jar,
   lib/poi-3.10-FINAL.jar,
   lib/poi-ooxml-3.10-FINAL.jar,
   lib/xmlbeans-2.3.0.jar,
   lib/poi-ooxml-schemas-3.10-FINAL.jar,
 - lib/swagger-annotations-1.3.5.jar
 -Import-Package: eu.etaxonomy.cdm.api.application
 + lib/swagger-annotations-1.3.5.jar,
 + lib/cdm-server-3.5.2-SNAPSHOT.jar
 +Import-Package: org.apache.commons.httpclient.methods
index e5a0e4b4cc5ef2407d99b5671495e062178ad8b6,e4b3cee83275367360bf150d123a09c0f356a025..9144d3177c7590c26c7bd4ca88eb36d414bf8014
@@@ -155,6 -155,15 +155,6 @@@ bin.includes = META-INF/,
                 lib/spring-security-core-3.1.3.RELEASE.jar,\\r
                 lib/stax-1.2.0.jar,\\r
                 lib/stax-api-1.0.1.jar,\\r
 -               lib/unitils-core-3.3.jar,\\r
 -               lib/unitils-database-3.3.jar,\\r
 -               lib/unitils-dbmaintainer-3.3.jar,\\r
 -               lib/unitils-dbunit-3.3.jar,\\r
 -               lib/unitils-easymock-3.3.jar,\\r
 -               lib/unitils-inject-3.3.jar,\\r
 -               lib/unitils-mock-3.3.jar,\\r
 -               lib/unitils-orm-3.3.jar,\\r
 -               lib/unitils-spring-3.3.jar,\\r
                 lib/usertype.jodatime-2.0.1.jar,\\r
                 lib/usertype.spi-2.0.1.jar,\\r
                 lib/validation-api-1.0.0.GA.jar,\\r
                 lib/poi-ooxml-3.10-FINAL.jar,\\r
                 lib/poi-ooxml-schemas-3.10-FINAL.jar,\\r
                 lib/xmlbeans-2.3.0.jar,\\r
-                lib/cdmlib-commons-3.5.2-SNAPSHOT-sources.jar,\\r
-                lib/cdmlib-commons-3.5.2-SNAPSHOT.jar,\\r
-                lib/cdmlib-ext-3.5.2-SNAPSHOT-sources.jar,\\r
-                lib/cdmlib-ext-3.5.2-SNAPSHOT.jar,\\r
-                lib/cdmlib-io-3.5.2-SNAPSHOT-sources.jar,\\r
-                lib/cdmlib-io-3.5.2-SNAPSHOT.jar,\\r
-                lib/cdmlib-model-3.5.2-SNAPSHOT-sources.jar,\\r
-                lib/cdmlib-model-3.5.2-SNAPSHOT.jar,\\r
-                lib/cdmlib-persistence-3.5.2-SNAPSHOT-sources.jar,\\r
-                lib/cdmlib-persistence-3.5.2-SNAPSHOT.jar,\\r
-                lib/cdmlib-print-3.5.2-SNAPSHOT-sources.jar,\\r
-                lib/cdmlib-print-3.5.2-SNAPSHOT.jar,\\r
-                lib/cdmlib-remote-3.5.2-SNAPSHOT-sources.jar,\\r
-                lib/cdmlib-remote-3.5.2-SNAPSHOT.jar,\\r
-                lib/cdmlib-services-3.5.2-SNAPSHOT-sources.jar,\\r
-                lib/cdmlib-services-3.5.2-SNAPSHOT.jar,\\r
+                lib/cdmlib-commons-3.6.1-SNAPSHOT-sources.jar,\\r
+                lib/cdmlib-commons-3.6.1-SNAPSHOT.jar,\\r
+                lib/cdmlib-ext-3.6.1-SNAPSHOT-sources.jar,\\r
+                lib/cdmlib-ext-3.6.1-SNAPSHOT.jar,\\r
+                lib/cdmlib-io-3.6.1-SNAPSHOT-sources.jar,\\r
+                lib/cdmlib-io-3.6.1-SNAPSHOT.jar,\\r
+                lib/cdmlib-model-3.6.1-SNAPSHOT-sources.jar,\\r
+                lib/cdmlib-model-3.6.1-SNAPSHOT.jar,\\r
+                lib/cdmlib-persistence-3.6.1-SNAPSHOT-sources.jar,\\r
+                lib/cdmlib-persistence-3.6.1-SNAPSHOT.jar,\\r
+                lib/cdmlib-print-3.6.1-SNAPSHOT-sources.jar,\\r
+                lib/cdmlib-print-3.6.1-SNAPSHOT.jar,\\r
+                lib/cdmlib-remote-3.6.1-SNAPSHOT-sources.jar,\\r
+                lib/cdmlib-remote-3.6.1-SNAPSHOT.jar,\\r
+                lib/cdmlib-services-3.6.1-SNAPSHOT-sources.jar,\\r
+                lib/cdmlib-services-3.6.1-SNAPSHOT.jar,\\r
                 lib/swagger-annotations-1.3.5.jar\r
  \r
  jars.compile.order = .\r
  output.. = bin/\r
  source.. = src/main/java/,\\r
 -           src/main/resources/,\\r
 -           src/test/java/\r
 +           src/main/resources/\r
  src.includes = src/\r
  \r
index d5534ed09adc99f673d7ca164c1dc9b6409012ad,f6025565ab58df3eea1dfd4cbc2a14f242e6c1d9..f919a79f5b4fe530894d5cc522f1d1b85ddf6d2c
  <?xml version="1.0" encoding="UTF-8"?>\r
 -<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">\r
 +<project>\r
 +\r
    <parent>\r
      <groupId>eu.etaxonomy</groupId>\r
      <artifactId>taxeditor-parent</artifactId>\r
-     <version>3.5.2-SNAPSHOT</version>\r
+     <version>3.6.1-SNAPSHOT</version>\r
    </parent>\r
    <modelVersion>4.0.0</modelVersion>\r
    <artifactId>eu.etaxonomy.taxeditor.cdmlib</artifactId>\r
    <packaging>eclipse-plugin</packaging>\r
 -  <name>CDM Library Dependencies Plugin</name>\r
 -  <description>CDM Library and dependencies as a plugin</description>\r
 +  <name>CDM Library Bundle</name>\r
 +  <description>Cdm Library Plugin Taxonomic Editor</description>\r
 +\r
    <build>\r
 -    <plugins>      \r
 -      <plugin>\r
 -      <groupId>org.apache.maven.plugins</groupId>\r
 -      <artifactId>maven-dependency-plugin</artifactId>\r
 -      <version>2.4</version>\r
 -      <executions>\r
 -        <execution>\r
 -          <id>copy-dependencies</id>\r
 -          <phase>validate</phase>\r
 -          <goals>\r
 -            <goal>copy-dependencies</goal>\r
 -          </goals>\r
 -          <configuration>\r
 -            <includeArtifactIds>cdmlib-commons,cdmlib-model,cdmlib-persistence,cdmlib-remote,cdmlib-print,cdmlib-services,cdmlib-ext,cdmlib-io</includeArtifactIds>\r
 -            <outputDirectory>lib</outputDirectory>\r
 -            <overWriteReleases>true</overWriteReleases>\r
 -            <overWriteSnapshots>true</overWriteSnapshots>\r
 -            <excludeTransitive>true</excludeTransitive>             \r
 -          </configuration>\r
 -        </execution>\r
 -        <execution>\r
 -          <id>copy-dependencies-sources</id>\r
 -          <phase>validate</phase>\r
 -          <goals>\r
 -            <goal>copy-dependencies</goal>\r
 -          </goals>\r
 -          <configuration>\r
 -            <classifier>sources</classifier>\r
 -            <includeArtifactIds>cdmlib-commons,cdmlib-model,cdmlib-persistence,cdmlib-remote,cdmlib-print,cdmlib-services,cdmlib-ext,cdmlib-io</includeArtifactIds>\r
 -            <outputDirectory>lib</outputDirectory>\r
 -            <overWriteReleases>true</overWriteReleases>\r
 -            <overWriteSnapshots>true</overWriteSnapshots>\r
 -            <excludeTransitive>true</excludeTransitive>\r
 -            <failOnMissingClassifierArtifact>false</failOnMissingClassifierArtifact>\r
 -          </configuration>\r
 -        </execution>\r
 -      </executions>\r
 +    <pluginManagement>\r
 +      <plugins>\r
 +        <plugin>\r
 +          <groupId>org.apache.maven.plugins</groupId>\r
 +          <artifactId>maven-surefire-plugin</artifactId>\r
 +          <version>2.7</version>\r
 +        </plugin>\r
 +      </plugins>\r
 +    </pluginManagement>\r
 +    <plugins>\r
 +      <plugin>
 +        <groupId>org.apache.maven.plugins</groupId>\r
 +        <artifactId>maven-dependency-plugin</artifactId>\r
 +        <version>2.4</version>\r
 +        <executions>\r
 +          <execution>\r
 +            <id>copy-dependencies</id>\r
 +            <phase>validate</phase>\r
 +            <goals>\r
 +              <goal>copy-dependencies</goal>\r
 +            </goals>\r
 +            <configuration>\r
 +              <excludeArtifactIds>\r
 +                cdmlib-remote-webapp\r
 +              </excludeArtifactIds>\r
 +              <includeArtifactIds>\r
 +                cdmlib-services,cdmlib-commons,cdmlib-persistence,cdmlib-ext,cdmlib-model,cdmlib-io,cdmlib-print,cdmlib-remote,cdm-server\r
 +              </includeArtifactIds>\r
 +              <outputDirectory>${basedir}/lib</outputDirectory>\r
 +              <overWriteReleases>true</overWriteReleases>\r
 +              <overWriteSnapshots>true</overWriteSnapshots>\r
 +              <excludeTransitive>true</excludeTransitive>\r
 +            </configuration>\r
 +          </execution>\r
 +          <execution>\r
 +            <id>copy-dependency-war</id>\r
 +            <phase>validate</phase>\r
 +            <goals>\r
 +              <goal>copy-dependencies</goal>\r
 +            </goals>\r
 +            <configuration>\r
 +              <includeArtifactIds>\r
 +                cdmlib-remote-webapp\r
 +              </includeArtifactIds>\r
 +              <outputDirectory>\r
 +                ${basedir}/src/main/resources/etc/jetty\r
 +              </outputDirectory>\r
 +              <overWriteReleases>true</overWriteReleases>\r
 +              <overWriteSnapshots>true</overWriteSnapshots>\r
 +              <excludeTransitive>true</excludeTransitive>\r
 +            </configuration>\r
 +          </execution>\r
 +        </executions>
        </plugin>\r
        <plugin>\r
 -      <groupId>org.apache.maven.plugins</groupId>\r
 -      <artifactId>maven-antrun-plugin</artifactId>\r
 -      <version>1.7</version>\r
 -      <executions>\r
 -        <execution>\r
 -          <id>remove-existing-jars</id>\r
 -          <phase>clean</phase>\r
 -          <goals>\r
 -            <goal>run</goal>\r
 -          </goals>\r
 -          <configuration>\r
 -            <target>\r
 -              <echo>Remove all cdmlib jars</echo>\r
 -              <delete>\r
 -                <fileset dir="./lib" includes="cdmlib-*"/>\r
 -              </delete>\r
 -            </target> \r
 -          </configuration>\r
 -        </execution>\r
 -        <execution>\r
 -          <id>update-snapshot-jar-names</id>\r
 -          <phase>validate</phase>\r
 -          <goals>\r
 -            <goal>run</goal>\r
 -          </goals>\r
 -          <configuration>           \r
 -            <target>\r
 -              <echo>Update cdmlib jars to SNAPSHOT when build with timestamp</echo>\r
 -              <move todir="./lib">\r
 -                <fileset dir="./lib" />\r
 -                <mapper type="regexp"\r
 -                        from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\.jar)" to="\1SNAPSHOT\2" />\r
 -              </move>                           \r
 -              <move todir="./lib">\r
 -                <fileset dir="./lib" />\r
 -                <mapper type="regexp"\r
 -                        from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\-sources\.jar)" to="\1SNAPSHOT\2" />\r
 -              </move>                           \r
 -            </target> \r
 -          </configuration>\r
 -        </execution>\r
 -      </executions>\r
 +        <groupId>org.apache.maven.plugins</groupId>\r
 +        <artifactId>maven-antrun-plugin</artifactId>\r
 +        <version>1.7</version>\r
 +        <executions>\r
 +          <execution>\r
 +            <id>update-snapshot-jar-names</id>\r
 +            <phase>validate</phase>\r
 +            <goals>\r
 +              <goal>run</goal>\r
 +            </goals>\r
 +            <configuration>\r
 +              <target>\r
 +                <echo>Anonymizing war</echo>\r
 +                <move todir="./src/main/resources/etc/jetty">\r
 +                  <fileset dir="./src/main/resources/etc/jetty" />\r
 +                  <mapper type="regexp"\r
 +                    from="(^cdmlib\-.*)\-[0-9]\.[0-9]\.[0-9]\-SNAPSHOT(\.war)"\r
 +                    to="\1\2" />\r
 +                </move>\r
 +                <move todir="./src/main/resources/etc/jetty">\r
 +                  <fileset dir="./src/main/resources/etc/jetty" />\r
 +                  <mapper type="regexp"\r
 +                    from="(^cdmlib\-.*)\-[0-9]\.[0-9]\.[0-9]\-[0-9.-]+(\.war)"\r
 +                    to="\1\2" />\r
 +                </move>\r
 +                <echo>Update cdmlib jars to SNAPSHOT when build with\r
 +                  timestamp\r
 +                </echo>\r
 +                <move todir="./lib">\r
 +                  <fileset dir="./lib" />\r
 +                  <mapper type="regexp"\r
 +                    from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\.jar)"\r
 +                    to="\1SNAPSHOT\2" />\r
 +                </move>\r
 +                <move todir="./lib">\r
 +                  <fileset dir="./lib" />\r
 +                  <mapper type="regexp"\r
 +                    from="(^cdm\-server\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\.jar)"\r
 +                    to="\1SNAPSHOT\2" />\r
 +                </move>\r
 +                <move todir="./lib">\r
 +                  <fileset dir="./lib" />\r
 +                  <mapper type="regexp"\r
 +                    from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\-sources\.jar)"\r
 +                    to="\1SNAPSHOT\2" />\r
 +                </move>\r
 +                <move todir="./lib">\r
 +                  <fileset dir="./lib" />\r
 +                  <mapper type="regexp"\r
 +                    from="(^cdm\-server\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\-sources\.jar)"\r
 +                    to="\1SNAPSHOT\2" />\r
 +                </move>\r
 +              </target>\r
 +            </configuration>\r
 +          </execution>\r
 +        </executions>\r
        </plugin>\r
      </plugins>\r
    </build>\r
 +  <profiles>\r
 +    <profile>\r
 +      <id>cleanCdmlibJars</id>\r
 +      <build>\r
 +        <plugins>\r
 +          <plugin>\r
 +            <artifactId>maven-clean-plugin</artifactId>\r
 +            <version>2.3</version>\r
 +            <configuration>\r
 +              <filesets>\r
 +                <fileset>\r
 +                  <directory>${basedir}/lib</directory>\r
 +                  <includes>\r
 +                    <include>cdmlib-*</include>\r
 +                  </includes>\r
 +                  <followSymlinks>false</followSymlinks>\r
 +                </fileset>\r
 +              </filesets>\r
 +            </configuration>\r
 +          </plugin>\r
 +        </plugins>\r
 +      </build>\r
 +    </profile>\r
 +    <profile>\r
 +      <id>cleanAllJars</id>\r
 +      <build>\r
 +        <plugins>\r
 +          <plugin>\r
 +            <artifactId>maven-clean-plugin</artifactId>\r
 +            <version>2.3</version>\r
 +            <configuration>\r
 +              <filesets>\r
 +                <fileset>\r
 +                  <directory>${basedir}/lib</directory>\r
 +                  <includes>\r
 +                    <include>*</include>\r
 +                  </includes>\r
 +                  <followSymlinks>false</followSymlinks>\r
 +                </fileset>\r
 +              </filesets>\r
 +            </configuration>\r
 +          </plugin>\r
 +        </plugins>\r
 +      </build>\r
 +    </profile>\r
 +    <profile>\r
 +      <id>copyAllJars</id>\r
 +      <build>\r
 +        <plugins>\r
 +          <plugin>\r
 +            <groupId>org.apache.maven.plugins</groupId>\r
 +            <artifactId>maven-dependency-plugin</artifactId>\r
 +            <version>2.4</version>\r
 +            <executions>\r
 +              <execution>\r
 +                <id>copy-all-dependencies</id>\r
 +                <phase>validate</phase>\r
 +                <goals>\r
 +                  <goal>copy-dependencies</goal>\r
 +                </goals>\r
 +                <configuration>\r
 +                  <excludeArtifactIds>\r
 +                    cdmlib-remote-webapp\r
 +                  </excludeArtifactIds>\r
 +                  <outputDirectory>${basedir}/lib</outputDirectory>\r
 +                  <overWriteReleases>true</overWriteReleases>\r
 +                  <overWriteSnapshots>true</overWriteSnapshots>\r
 +                  <excludeTransitive>true</excludeTransitive>\r
 +                </configuration>\r
 +              </execution>\r
 +            </executions>\r
 +          </plugin>\r
 +        </plugins>\r
 +      </build>\r
 +    </profile>\r
 +  </profiles>\r
 +  <repositories>\r
 +    <repository>\r
 +      <id>SpringSource Enterprise Bundle Repository - External Bundle\r
 +        Milestones\r
 +      </id>\r
 +      <url>http://repository.springsource.com/maven/bundles/milestone\r
 +      </url>\r
 +    </repository>\r
 +    <repository>\r
 +      <id>SpringSource Enterprise Bundle Repository - SpringSource\r
 +        Bundle\r
 +        Releases\r
 +      </id>\r
 +      <url>http://repository.springsource.com/maven/bundles/release\r
 +      </url>\r
 +    </repository>\r
 +    <repository>\r
 +      <id>SpringSource Enterprise Bundle Repository - External Bundle\r
 +        Releases\r
 +      </id>\r
 +      <url>http://repository.springsource.com/maven/bundles/external\r
 +      </url>\r
 +    </repository>\r
 +  </repositories>\r
    <dependencies>\r
      <dependency>\r
 -      <groupId>identificationKeyAPI</groupId>\r
 -      <artifactId>identificationKeyAPI</artifactId>\r
 -      <version>1.0-SNAPSHOT</version>\r
 +      <groupId>eu.etaxonomy</groupId>\r
 +      <artifactId>cdmlib-remote-webapp</artifactId>\r
 +      <version>${cdmlib.version}</version>\r
 +      <type>war</type>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>eu.etaxonomy</groupId>\r
 +      <artifactId>cdm-server</artifactId>\r
 +      <version>3.5.2-SNAPSHOT</version>\r
      </dependency>\r
      <dependency>\r
        <groupId>eu.etaxonomy</groupId>\r
        <artifactId>cdmlib-ext</artifactId>\r
        <version>${cdmlib.version}</version>\r
      </dependency>\r
 -      <dependency>\r
 +\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>org.eclipse.jetty</groupId> -->\r
 +    <!-- <artifactId>jetty-server</artifactId> -->\r
 +    <!-- <version>9.1.3.v20140225</version> -->\r
 +    <!-- </dependency> -->\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>org.eclipse.jetty</groupId> -->\r
 +    <!-- <artifactId>jetty-util</artifactId> -->\r
 +    <!-- <version>9.1.3.v20140225</version> -->\r
 +    <!-- </dependency> -->\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>org.eclipse.jetty</groupId> -->\r
 +    <!-- <artifactId>jetty-xml</artifactId> -->\r
 +    <!-- <version>9.1.3.v20140225</version> -->\r
 +    <!-- </dependency> -->\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>org.eclipse.jetty</groupId> -->\r
 +    <!-- <artifactId>jetty-servlet</artifactId> -->\r
 +    <!-- <version>9.1.3.v20140225</version> -->\r
 +    <!-- </dependency> -->\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>org.eclipse.jetty</groupId> -->\r
 +    <!-- <artifactId>jetty-webapp</artifactId> -->\r
 +    <!-- <version>9.1.3.v20140225</version> -->\r
 +    <!-- </dependency> -->\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>org.eclipse.jetty</groupId> -->\r
 +    <!-- <artifactId>jetty-security</artifactId> -->\r
 +    <!-- <version>9.1.3.v20140225</version> -->\r
 +    <!-- </dependency> -->\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>org.eclipse.jetty</groupId> -->\r
 +    <!-- <artifactId>jetty-http</artifactId> -->\r
 +    <!-- <version>${jetty.version}</version> -->\r
 +    <!-- </dependency> -->\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>org.eclipse.jetty</groupId> -->\r
 +    <!-- <artifactId>jetty-io</artifactId> -->\r
 +    <!-- <version>${jetty.version}</version> -->\r
 +    <!-- </dependency> -->\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>javax.servlet</groupId> -->\r
 +    <!-- <artifactId>javax.servlet-api</artifactId> -->\r
 +    <!-- <version>3.1.0</version> -->\r
 +    <!-- </dependency> -->\r
 +\r
 +    <!-- <dependency> -->\r
 +    <!-- <groupId>javax.servlet</groupId> -->\r
 +    <!-- <artifactId>jsp-api</artifactId> -->\r
 +    <!-- <version>2.0</version> -->\r
 +    <!-- </dependency> -->\r
 +\r
 +    <dependency>\r
 +      <groupId>net.sf.ehcache</groupId>\r
 +      <artifactId>ehcache-core</artifactId>\r
 +      <version>2.4.3</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.hibernate</groupId>\r
 +      <artifactId>hibernate-core</artifactId>\r
 +      <version>4.1.10.Final</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.hibernate.common</groupId>\r
 +      <artifactId>hibernate-commons-annotations</artifactId>\r
 +      <version>4.0.1.Final</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.hibernate</groupId>\r
 +      <artifactId>hibernate-search-engine</artifactId>\r
 +      <version>4.2.0.Final</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.hibernate.javax.persistence</groupId>\r
 +      <artifactId>hibernate-jpa-2.0-api</artifactId>\r
 +      <version>1.0.1.Final</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.hibernate</groupId>\r
 +      <artifactId>hibernate-envers</artifactId>\r
 +      <version>4.1.10.Final</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.hibernate</groupId>\r
 +      <artifactId>hibernate-entitymanager</artifactId>\r
 +      <version>4.1.10.Final</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>dom4j</groupId>\r
 +      <artifactId>dom4j</artifactId>\r
 +      <version>1.6</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.jadira.usertype</groupId>\r
 +      <artifactId>usertype.jodatime</artifactId>\r
 +      <version>2.0.1</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.jadira.usertype</groupId>\r
 +      <artifactId>usertype.spi</artifactId>\r
 +      <version>2.0.1</version>\r
 +    </dependency>\r
 +\r
 +    <dependency>\r
 +      <groupId>junit</groupId>\r
 +      <artifactId>junit</artifactId>\r
 +      <version>4.11</version>\r
 +      <scope>test</scope>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>log4j</groupId>\r
 +      <artifactId>log4j</artifactId>\r
 +      <version>1.2.17</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.jdom</groupId>\r
 +      <artifactId>jdom</artifactId>\r
 +      <version>1.1.3</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.context</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.context.support</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.aspects</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.test</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.beans</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.transaction</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.web</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.core</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.aop</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.expression</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.orm</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework</groupId>\r
 +      <artifactId>org.springframework.jdbc</artifactId>\r
 +      <version>3.2.2.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework.security</groupId>\r
 +      <artifactId>spring-security-core</artifactId>\r
 +      <version>3.1.3.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework.security</groupId>\r
 +      <artifactId>spring-security-config</artifactId>\r
 +      <version>3.1.3.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.springframework.security</groupId>\r
 +      <artifactId>spring-security-remoting</artifactId>\r
 +      <version>3.1.3.RELEASE</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.jboss.logging</groupId>\r
 +      <artifactId>jboss-logging</artifactId>\r
 +      <version>3.1.3.GA</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.hamcrest</groupId>\r
 +      <artifactId>hamcrest-core</artifactId>\r
 +      <version>1.3</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>com.mchange</groupId>\r
 +      <artifactId>c3p0</artifactId>\r
 +      <version>0.9.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.jboss.spec.javax.transaction</groupId>\r
 +      <artifactId>jboss-transaction-api_1.1_spec</artifactId>\r
 +      <version>1.0.0.Final</version>\r
 +    </dependency>\r
 +    <dependency>\r
        <groupId>org.aspectj</groupId>\r
        <artifactId>aspectjrt</artifactId>\r
 -        <version>1.7.1</version>\r
 -      </dependency>\r
 -        <dependency>\r
 -        <groupId>org.aspectj</groupId>\r
 -        <artifactId>aspectjweaver</artifactId>\r
 -        <version>1.7.1</version>\r
 -       </dependency>\r
 -       \r
 -    <!--  for ikey-plus \r
 -       TODO this should not be needed but the utils class contained  in this jar \r
 -       seems to be loaded as bean by spring\r
 -    -->\r
 +      <version>1.7.1</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>commons-logging</groupId>\r
 +      <artifactId>commons-logging</artifactId>\r
 +      <version>1.1.1</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>commons-lang</groupId>\r
 +      <artifactId>commons-lang</artifactId>\r
 +      <version>2.6</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>aopalliance</groupId>\r
 +      <artifactId>aopalliance</artifactId>\r
 +      <version>1.0</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>joda-time</groupId>\r
 +      <artifactId>joda-time</artifactId>\r
 +      <version>2.1</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>com.ibm.lsid</groupId>\r
 +      <artifactId>lsid-client</artifactId>\r
 +      <version>1.1.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>com.ibm.lsid</groupId>\r
 +      <artifactId>lsid-server</artifactId>\r
 +      <version>1.1.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.apache.lucene</groupId>\r
 +      <artifactId>lucene-core</artifactId>\r
 +      <version>3.6.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.slf4j</groupId>\r
 +      <artifactId>slf4j-api</artifactId>\r
 +      <version>1.7.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.javassist</groupId>\r
 +      <artifactId>javassist</artifactId>\r
 +      <version>3.17.1-GA</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>au.com.bytecode</groupId>\r
 +      <artifactId>opencsv</artifactId>\r
 +      <version>2.4</version>\r
 +    </dependency>\r
 +\r
 +    <!-- For Unit Tests Start -->\r
 +\r
 +    <dependency>\r
 +      <groupId>org.unitils</groupId>\r
 +      <artifactId>unitils-core</artifactId>\r
 +      <version>3.4.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.unitils</groupId>\r
 +      <artifactId>unitils-spring</artifactId>\r
 +      <version>3.4.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.unitils</groupId>\r
 +      <artifactId>unitils-database</artifactId>\r
 +      <version>3.4.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>commons-dbcp</groupId>\r
 +      <artifactId>commons-dbcp</artifactId>\r
 +      <version>1.4</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>commons-pool</groupId>\r
 +      <artifactId>commons-pool</artifactId>\r
 +      <version>1.5.4</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.unitils</groupId>\r
 +      <artifactId>unitils-dbmaintainer</artifactId>\r
 +      <version>3.4.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>com.h2database</groupId>\r
 +      <artifactId>h2</artifactId>\r
 +      <version>1.4.181</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.unitils</groupId>\r
 +      <artifactId>unitils-dbunit</artifactId>\r
 +      <version>3.4.2</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>org.dbunit</groupId>\r
 +      <artifactId>dbunit</artifactId>\r
 +      <version>2.4.9</version>\r
 +    </dependency>\r
 +    <!-- For Unit Tests End -->\r
 +\r
 +    <!-- For Hibernate Mapping Start -->\r
 +    <dependency>\r
 +      <groupId>wsdl4j</groupId>\r
 +      <artifactId>wsdl4j</artifactId>\r
 +      <version>1.6.3</version>\r
 +    </dependency>\r
 +    <dependency>\r
 +      <groupId>javax.validation</groupId>\r
 +      <artifactId>validation-api</artifactId>\r
 +      <version>1.1.0.Final</version>\r
 +    </dependency>\r
 +    <!-- For Hibernate Mapping End -->\r
    </dependencies>\r
 -</project>\r
 +</project>
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..025942636e0b88ed50e3965b0985e249d090cade
new file mode 100644 (file)
Binary files differ
index 7d14232f8f4c44d6ca15b63dc4ee2a693b7479b8,bef9a192a1b9fed7b6f6910cd026b9d320a4d927..1edf2c8f2f07d58fc597b89b3e82037075875c18
@@@ -2,7 -2,7 +2,7 @@@ Manifest-Version: 1.
  Bundle-ManifestVersion: 2
  Bundle-Name: Editor Bundle
  Bundle-SymbolicName: eu.etaxonomy.taxeditor.editor;singleton:=true
- Bundle-Version: 3.5.2.qualifier
+ Bundle-Version: 3.6.1.qualifier
  Bundle-Activator: eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin
  Bundle-Vendor: %Bundle-Vendor.0
  Bundle-Localization: OSGI-INF/l10n/plugin
@@@ -11,7 -11,6 +11,7 @@@ Export-Package: eu.etaxonomy.taxeditor.
   eu.etaxonomy.taxeditor.editor.internal,
   eu.etaxonomy.taxeditor.editor.name,
   eu.etaxonomy.taxeditor.editor.name.handler,
 + eu.etaxonomy.taxeditor.editor.name.operation,
   eu.etaxonomy.taxeditor.editor.view.concept,
   eu.etaxonomy.taxeditor.editor.view.dataimport,
   eu.etaxonomy.taxeditor.editor.view.descriptive,
@@@ -26,7 -25,7 +26,7 @@@ Require-Bundle: org.eclipse.ui
   org.eclipse.zest.core,
   org.eclipse.zest.layouts,
   eu.etaxonomy.taxeditor.cdmlib,
 - org.eclipse.ui.ide;bundle-version="3.7.0"
 + org.eclipse.ui.ide
  Bundle-RequiredExecutionEnvironment: JavaSE-1.6
  Bundle-ActivationPolicy: lazy
  Import-Package: org.eclipse.core.databinding.beans,
index 16257e4a501a68ce513bac45dfbf109172e92e46,5452a0458934f0005106036673d3807183766aed..ff10a6f5b6c9418d5d5f6405af5e5f343fa3784e
@@@ -1,17 -1,15 +1,17 @@@
  /**
 -* Copyright (C) 2007 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.
 -*/
 + * Copyright (C) 2007 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.editor;
  
 +import java.util.Arrays;
  import java.util.HashSet;
 +import java.util.List;
  import java.util.Set;
  import java.util.UUID;
  
@@@ -48,372 -46,345 +48,418 @@@ import eu.etaxonomy.taxeditor.store.Cdm
   * @created 19.03.2009
   * @version 1.0
   */
 -public class TaxonEditorInput implements IEditorInput, IConversationEnabled, IPersistableElement {
 +public class TaxonEditorInput extends CdmEntitySessionInput implements IEditorInput, IConversationEnabled, IPersistableElement {
  
 -      private final ConversationHolder conversation;
 +    private final ConversationHolder conversation;
  
 -      private final TaxonNode taxonNode;
 +    private TaxonNode taxonNode;
  
 -      private TaxonEditorInputDataChangeBehaviour dataChangeBehavior;
 +    private TaxonEditorInputDataChangeBehaviour dataChangeBehavior;
  
 -      private TaxonBase initiallySelectedTaxonBase;
 +    private TaxonBase initiallySelectedTaxonBase;
  
 -      private TaxonEditorInput(TaxonNode taxonNode, ConversationHolder conversation){
 -              this.conversation = conversation;
 -              this.taxonNode = taxonNode;
 -      }
 +    private final ITaxonNodeService service;
  
 +    private enum CdmType {
 +        TAXON_NODE,
 +        TAXON_BASE,
 +        PARENT_TAXON_NODE
 +    }
  
 +    private TaxonEditorInput(UUID uuid, CdmType type) {
 +        this.conversation = CdmStore.createConversation();
 +        service = CdmStore.getService(ITaxonNodeService.class);
 +        switch(type) {
 +        case PARENT_TAXON_NODE:
 +            initForParentTaxonNode(uuid);
 +            break;
 +        case TAXON_BASE:
 +            initForTaxonBase(uuid);
 +            break;
 +        case TAXON_NODE:
 +            initForTaxonNode(uuid);
 +            break;
 +        }
 +    }
 +
 +    private void init(TaxonNode taxonNode) {
 +        this.taxonNode = taxonNode;
 +    }
  
 -      /**
 -       * <p>NewInstance</p>
 -       *
 -       * @param taxonNodeUuid a {@link java.util.UUID} object.
 -       * @return a {@link eu.etaxonomy.taxeditor.editor.TaxonEditorInput} object.
 -       * @throws java.lang.Exception if any.
 -       */
 -      public static TaxonEditorInput NewInstance(UUID taxonNodeUuid) throws Exception{
 -              try{
 -                      ConversationHolder conversation = CdmStore.createConversation();
 -                      return NewInstance(taxonNodeUuid, conversation);
 -              }catch(Exception e){
 -                      throw e;
 -              }
 -      }
  
      /**
 +     * <p>NewInstance</p>
       *
 -     * @param taxonNodeUuid
 -     * @param conversation
 -     * @return
 +     * @param taxonNodeUuid a {@link java.util.UUID} object.
 +     * @return a {@link eu.etaxonomy.taxeditor.editor.TaxonEditorInput} object.
 +     * @throws java.lang.Exception if any.
       */
 -    private static TaxonEditorInput NewInstance(UUID taxonNodeUuid, ConversationHolder conversation){
 +    private void initForTaxonNode(UUID taxonNodeUuid) {
 +
  
 +        TaxonNode taxonNode = getCdmEntitySession().remoteLoad(service,taxonNodeUuid, null);
 +
 +        if(taxonNode == null){
 +            MessagingUtils.warningDialog("Not yet implemented", TaxonEditorInput.class, "Selected element is not type TaxonBase.");
 +        }
 +        init(taxonNode);
  
 -      TaxonNode taxonNode = CdmStore.getService(ITaxonNodeService.class).load(taxonNodeUuid, null);
+               if(taxonNode == null){
+                       MessagingUtils.warningDialog("Not yet implemented", TaxonEditorInput.class, "Selected element is not of type TaxonNode but [null].");
+                       return null;
+               }
 +    }
  
 -      return new TaxonEditorInput(taxonNode, conversation);
 +    private void initForTaxonBase(UUID taxonBaseUuid) {
 +
 +        TaxonBase taxonBase = getCdmEntitySession().remoteLoad(CdmStore.getService(ITaxonService.class),taxonBaseUuid);
 +        if (taxonBase != null){
 +            if(taxonBase.isInstanceOf(Taxon.class)){
 +                Taxon taxon = CdmBase.deproxy(taxonBase, Taxon.class);
 +
 +                if (taxon.getTaxonNodes().size() == 0 && taxon.isMisapplication()){
 +                    // TODO get accepted taxon
 +                    MessagingUtils.info("trying to open Mispplied Name ");
 +
 +                    Set<Taxon> acceptedTaxa = new HashSet<Taxon>();
 +                    Set<TaxonRelationship> relations = taxon.getRelationsFromThisTaxon();
 +                    for(TaxonRelationship relation : relations){
 +                        if(relation.getType().equals(TaxonRelationshipType.MISAPPLIED_NAME_FOR())){
 +                            acceptedTaxa.add(relation.getToTaxon());
 +                        }
 +                    }
 +                    setInputForMultipleTaxa(conversation, acceptedTaxa);
 +
 +                }else{
 +                    setInputForMultipleNodes(conversation, taxon.getTaxonNodes());
 +                }
 +            }else if(taxonBase instanceof Synonym){
 +                Synonym synonym = (Synonym) taxonBase;
 +
 +                Set<Taxon> taxa = synonym.getAcceptedTaxa();
 +                setInputForMultipleTaxa(conversation, taxa);
 +            }
 +        }
      }
  
 +
      /**
 -     * <p>NewInstanceFromTaxonBase</p>
 +     * <p>NewEmptyInstance</p>
       *
 -     * @param taxonBaseUuid a {@link java.util.UUID} object.
 +     * @param parentNodeUuid a {@link java.util.UUID} object.
       * @return a {@link eu.etaxonomy.taxeditor.editor.TaxonEditorInput} object.
       */
 -      private static TaxonEditorInput getInputForMultipleNodes(ConversationHolder conversation, Set<TaxonNode> taxonNodes){
 -      if(taxonNodes.size() == 1){
 -              TaxonNode taxonNode = taxonNodes.iterator().next();
 -              return NewInstance(taxonNode.getUuid(), conversation);
 -      }else if(taxonNodes.size() > 1){
 -                      TaxonNode taxonNode = ChooseFromMultipleTaxonNodesDialog.choose(taxonNodes);
 -                      if(taxonNode != null){
 -                              return NewInstance(taxonNode.getUuid(), conversation);
 -                      }
 -              }else if(taxonNodes.size() == 0){
 -                      // this is an undesired state
 -                      MessagingUtils.warningDialog("Incorrect state", TaxonEditorInput.class, "The accepted taxon is not part of any classification. This should not have happened.");
 -              }
 -      return null;
 +    private void initForParentTaxonNode(UUID parentNodeUuid){
 +
 +
 +        TaxonNameBase<?, ?> name = PreferencesUtil.getPreferredNomenclaturalCode().getNewTaxonNameInstance(null);
 +        ITaxonTreeNode parentNode = CdmStore.getService(IClassificationService.class).getTreeNodeByUuid(parentNodeUuid);
 +
 +        Taxon newTaxon = Taxon.NewInstance(name, parentNode.getReference());
 +        TaxonNode newTaxonNode = parentNode.addChildTaxon(newTaxon, parentNode.getReference(), parentNode.getMicroReference());
 +
 +        // add the new taxon to the editors persistence context
 +        UUID newTaxonNodeUuid = getCdmEntitySession().remoteSave(CdmStore.getService(ITaxonNodeService.class),newTaxonNode);
 +
 +        initForTaxonNode(newTaxonNodeUuid);
 +    }
 +
+     public static TaxonEditorInput NewInstanceFromTaxonBase(UUID taxonBaseUuid){
+       ConversationHolder conversation = CdmStore.createConversation();
+       TaxonEditorInput input = null;
+       TaxonBase taxonBase = CdmStore.getService(ITaxonService.class).find(taxonBaseUuid);
+       if (taxonBase != null){
+               if(taxonBase.isInstanceOf(Taxon.class)){
+                       Taxon taxon = CdmBase.deproxy(taxonBase, Taxon.class);
+                       if (taxon.getTaxonNodes().size() == 0 && taxon.isMisapplication()){
+                               // TODO get accepted taxon
+                               MessagingUtils.info("trying to open misapplied Name ");
+                               Set<Taxon> acceptedTaxa = new HashSet<Taxon>();
+                               Set<TaxonRelationship> relations = taxon.getRelationsFromThisTaxon();
+                               for(TaxonRelationship relation : relations){
+                                       if(relation.getType().equals(TaxonRelationshipType.MISAPPLIED_NAME_FOR())){
+                                               acceptedTaxa.add(relation.getToTaxon());
+                                       }
+                               }
+                               input =  getInputForMultipleTaxa(conversation, acceptedTaxa);
+                       }else{
+                               input = getInputForMultipleNodes(conversation, taxon.getTaxonNodes());
+                       }
+               }else if(taxonBase instanceof Synonym){
+                       Synonym synonym = (Synonym) taxonBase;
+                       Set<Taxon> taxa = synonym.getAcceptedTaxa();
+                       input = getInputForMultipleTaxa(conversation, taxa);
+               }
+               if (input != null){
+                       input.setInitiallySelectedTaxonBase(taxonBase);
+               }
+       }
+       return input;
+     }
 +
 +    private void setInputForMultipleNodes(ConversationHolder conversation, Set<TaxonNode> taxonNodes){
 +        if(taxonNodes.size() == 1){
 +            TaxonNode taxonNode = taxonNodes.iterator().next();
 +            init(taxonNode);
 +        }else if(taxonNodes.size() > 1){
 +            TaxonNode taxonNode = ChooseFromMultipleTaxonNodesDialog.choose(taxonNodes);
 +            if(taxonNode != null){
 +                init(taxonNode);
 +            }
 +        }else if(taxonNodes.size() == 0){
 +            // this is an undesired state
 +            MessagingUtils.warningDialog("Incorrect state", TaxonEditorInput.class, "The accepted taxon is not part of any classification. This should not have happened.");
 +        }
      }
  
 -    private static TaxonEditorInput getInputForMultipleTaxa(ConversationHolder conversation, Set<Taxon> taxa){
 -      if(taxa.size() == 1){
 -              Taxon taxon = taxa.iterator().next();
 -              Set<TaxonNode> nodes = taxon.getTaxonNodes();
 -              return getInputForMultipleNodes(conversation, nodes);
 -      }else if(taxa.size() > 1){
 -              Set<TaxonNode> taxonNodes = new HashSet<TaxonNode>();
 -                      for ( Taxon taxon : taxa ){
 -                              taxonNodes.addAll(taxon.getTaxonNodes());
 -                      }
 -                      return getInputForMultipleNodes(conversation, taxonNodes);
 -              }else if(taxa.size() == 0){
 -                      // this is an undesired state
 -                      MessagingUtils.warningDialog("Incorrect state", TaxonEditorInput.class, "Trying to open accepted taxon for a synonym or misapplication but" +
 -                                      " no accepted taxa are present. This should not have happened.");
 -              }
 -      return null;
 +    private void setInputForMultipleTaxa(ConversationHolder conversation, Set<Taxon> taxa){
 +        if(taxa.size() == 1){
 +            Taxon taxon = taxa.iterator().next();
 +            Set<TaxonNode> nodes = taxon.getTaxonNodes();
 +            setInputForMultipleNodes(conversation, nodes);
 +        }else if(taxa.size() > 1){
 +            Set<TaxonNode> taxonNodes = new HashSet<TaxonNode>();
 +            for ( Taxon taxon : taxa ){
 +                taxonNodes.addAll(taxon.getTaxonNodes());
 +            }
 +            setInputForMultipleNodes(conversation, taxonNodes);
 +        }else if(taxa.size() == 0){
 +            // this is an undesired state
 +            MessagingUtils.warningDialog("Incorrect state", TaxonEditorInput.class, "Trying to open accepted taxon for a synonym or misapplication but" +
 +                    " no accepted taxa are present. This should not have happened.");
 +        }
      }
  
      /**
 -     * <p>NewEmptyInstance</p>
 +     * <p>NewInstance</p>
       *
 -     * @param parentNodeUuid a {@link java.util.UUID} object.
 +     * @param taxonNodeUuid a {@link java.util.UUID} object.
       * @return a {@link eu.etaxonomy.taxeditor.editor.TaxonEditorInput} object.
 +     * @throws java.lang.Exception if any.
       */
 -    public static TaxonEditorInput NewEmptyInstance(UUID parentNodeUuid){
 -      ConversationHolder conversation = CdmStore.createConversation();
 +    public static TaxonEditorInput NewInstance(UUID taxonNodeUuid) throws Exception {
 +        return new TaxonEditorInput(taxonNodeUuid, CdmType.TAXON_NODE);
  
 -              TaxonNameBase<?, ?> name = PreferencesUtil.getPreferredNomenclaturalCode().getNewTaxonNameInstance(null);
 -              ITaxonTreeNode parentNode = CdmStore.getService(IClassificationService.class).getTreeNodeByUuid(parentNodeUuid);
 +    }
 +
 +    /**
 +     * <p>NewInstanceFromTaxonBase</p>
 +     *
 +     * @param taxonBaseUuid a {@link java.util.UUID} object.
 +     * @return a {@link eu.etaxonomy.taxeditor.editor.TaxonEditorInput} object.
 +     */
 +    public static TaxonEditorInput NewInstanceFromTaxonBase(UUID taxonBaseUuid){
 +        return new TaxonEditorInput(taxonBaseUuid, CdmType.TAXON_BASE);
 +    }
  
 -              Taxon newTaxon = Taxon.NewInstance(name, parentNode.getReference());
 -              TaxonNode newTaxonNode = parentNode.addChildTaxon(newTaxon, parentNode.getReference(), parentNode.getMicroReference());
  
 -              // add the new taxon to the editors persistence context
 -              UUID newTaxonNodeUuid = CdmStore.getService(ITaxonNodeService.class).save(newTaxonNode);
  
 -              return new TaxonEditorInput(newTaxonNode, conversation);
 +
 +    /**
 +     * <p>NewEmptyInstance</p>
 +     *
 +     * @param parentNodeUuid a {@link java.util.UUID} object.
 +     * @return a {@link eu.etaxonomy.taxeditor.editor.TaxonEditorInput} object.
 +     */
 +    public static TaxonEditorInput NewEmptyInstance(UUID parentNodeUuid){
 +        return new TaxonEditorInput(parentNodeUuid, CdmType.PARENT_TAXON_NODE);
      }
  
 -      /* (non-Javadoc)
 -       * @see org.eclipse.ui.IEditorInput#exists()
 -       */
 -      /**
 -       * <p>exists</p>
 -       *
 -       * @return a boolean.
 -       */
 -      @Override
 +    /* (non-Javadoc)
 +     * @see org.eclipse.ui.IEditorInput#exists()
 +     */
 +    /**
 +     * <p>exists</p>
 +     *
 +     * @return a boolean.
 +     */
 +    @Override
      public boolean exists() {
 -              return taxonNode != null;
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
 -       */
 -      /**
 -       * <p>getImageDescriptor</p>
 -       *
 -       * @return a {@link org.eclipse.jface.resource.ImageDescriptor} object.
 -       */
 -      @Override
 +        return taxonNode != null;
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
 +     */
 +    /**
 +     * <p>getImageDescriptor</p>
 +     *
 +     * @return a {@link org.eclipse.jface.resource.ImageDescriptor} object.
 +     */
 +    @Override
      public ImageDescriptor getImageDescriptor() {
 -              return null;
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.ui.IEditorInput#getName()
 -       */
 -      /**
 -       * <p>getName</p>
 -       *
 -       * @return a {@link java.lang.String} object.
 -       */
 -      @Override
 +        return null;
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.ui.IEditorInput#getName()
 +     */
 +    /**
 +     * <p>getName</p>
 +     *
 +     * @return a {@link java.lang.String} object.
 +     */
 +    @Override
      public String getName() {
 -              if(getTaxon() == null){
 -                      return null;
 -              }
 -              TaxonNameBase<?, ?> name = getTaxon().getName();
 -              if (name == null || name.getTitleCache() == null) {
 -                      return "New taxon";
 -              } else {
 -                      return name.getTitleCache();
 -              }
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.ui.IEditorInput#getPersistable()
 -       */
 -      /**
 -       * <p>getPersistable</p>
 -       *
 -       * @return a {@link org.eclipse.ui.IPersistableElement} object.
 -       */
 -      @Override
 +        if(getTaxon() == null){
 +            return null;
 +        }
 +        TaxonNameBase<?, ?> name = getTaxon().getName();
 +        if (name == null || name.getTitleCache() == null) {
 +            return "New taxon";
 +        } else {
 +            return name.getTitleCache();
 +        }
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.ui.IEditorInput#getPersistable()
 +     */
 +    /**
 +     * <p>getPersistable</p>
 +     *
 +     * @return a {@link org.eclipse.ui.IPersistableElement} object.
 +     */
 +    @Override
      public IPersistableElement getPersistable() {
 -//            if(CdmStore.isActive()){
 -//                    TaxonNode test = CdmStore.getTaxonTreeService().getTaxonNodeByUuid(taxonNode.getUuid());
 -//                    boolean isPersistable = CdmStore.getTaxonTreeService().getTaxonNodeByUuid(taxonNode.getUuid()) != null;
 -//                    if (isPersistable) {
 -//                            return this;
 -//                    }
 -//            }
 -              return null;
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.ui.IEditorInput#getToolTipText()
 -       */
 -      /**
 -       * <p>getToolTipText</p>
 -       *
 -       * @return a {@link java.lang.String} object.
 -       */
 -      @Override
 +        //            if(CdmStore.isActive()){
 +        //                    TaxonNode test = CdmStore.getTaxonTreeService().getTaxonNodeByUuid(taxonNode.getUuid());
 +        //                    boolean isPersistable = CdmStore.getTaxonTreeService().getTaxonNodeByUuid(taxonNode.getUuid()) != null;
 +        //                    if (isPersistable) {
 +        //                            return this;
 +        //                    }
 +        //            }
 +        return null;
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.ui.IEditorInput#getToolTipText()
 +     */
 +    /**
 +     * <p>getToolTipText</p>
 +     *
 +     * @return a {@link java.lang.String} object.
 +     */
 +    @Override
      public String getToolTipText() {
 -              return getName();
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
 -       */
 -      /** {@inheritDoc} */
 -      @Override
 +        return getName();
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
 +     */
 +    /** {@inheritDoc} */
 +    @Override
      public Object getAdapter(Class adapter) {
  
 -              if (adapter == Taxon.class) {
 -                      return taxonNode.getTaxon();
 -              }
 +        if (adapter == Taxon.class) {
 +            return getTaxon();
 +        }
  
 -              if (adapter == TaxonNode.class) {
 -                      return taxonNode;
 -              }
 +        if (adapter == TaxonNode.class) {
 +            return taxonNode;
 +        }
  
 -              return null;
 -      }
 +        return null;
 +    }
  
 -      /**
 -       * {@inheritDoc}
 -       *
 -       * Overrides equals to ensure that a taxon can only be edited by
 -       * one editor at a time.
 -       */
 -      @Override
 +    /**
 +     * {@inheritDoc}
 +     *
 +     * Overrides equals to ensure that a taxon can only be edited by
 +     * one editor at a time.
 +     */
 +    @Override
      public boolean equals(Object obj) {
 -              if (TaxonEditorInput.class.equals(obj.getClass())
 -                              && getTaxon() != null
 -                              && getTaxon().equals(((TaxonEditorInput) obj).getTaxon())){
 -                      if(((TaxonEditorInput) obj).getInitiallySelectedTaxonBase() != null){
 -                              setInitiallySelectedTaxonBase(((TaxonEditorInput) obj).getInitiallySelectedTaxonBase());
 -                      }
 -                      return true;
 -              }
 -              return false;
 -      }
 -
 -      /**
 -       * <p>getTaxon</p>
 -       *
 -       * @return the taxon
 -       */
 -      public Taxon getTaxon(){
 -              return taxonNode.getTaxon();
 -      }
 -
 -      /**
 -       * <p>Getter for the field <code>taxonNode</code>.</p>
 -       *
 -       * @return the taxonNode
 -       */
 -      public TaxonNode getTaxonNode() {
 -              return taxonNode;
 -      }
 -
 -      /*
 -       * (non-Javadoc)
 -       * @see eu.etaxonomy.cdm.api.conversation.IConversationEnabled#getConversationHolder()
 -       */
 -      /**
 -       * <p>getConversationHolder</p>
 -       *
 -       * @return a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
 -       */
 -      @Override
 +        if (TaxonEditorInput.class.equals(obj.getClass())
 +                && getTaxon() != null
 +                && getTaxon().equals(((TaxonEditorInput) obj).getTaxon())){
 +            if(((TaxonEditorInput) obj).getInitiallySelectedTaxonBase() != null){
 +                setInitiallySelectedTaxonBase(((TaxonEditorInput) obj).getInitiallySelectedTaxonBase());
 +            }
 +            return true;
 +        }
 +        return false;
 +    }
 +
 +    /**
 +     * <p>getTaxon</p>
 +     *
 +     * @return the taxon
 +     */
 +    public Taxon getTaxon(){
 +        Taxon taxon = CdmBase.deproxy(taxonNode.getTaxon(), Taxon.class);
 +        return taxon;
 +    }
 +
 +    /**
 +     * <p>Getter for the field <code>taxonNode</code>.</p>
 +     *
 +     * @return the taxonNode
 +     */
 +    public TaxonNode getTaxonNode() {
 +        return taxonNode;
 +    }
 +
 +    /*
 +     * (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.conversation.IConversationEnabled#getConversationHolder()
 +     */
 +    /**
 +     * <p>getConversationHolder</p>
 +     *
 +     * @return a {@link eu.etaxonomy.cdm.api.conversation.ConversationHolder} object.
 +     */
 +    @Override
      public ConversationHolder getConversationHolder() {
 -              return conversation;
 -      }
 -
 -      /*
 -       * (non-Javadoc)
 -       * @see eu.etaxonomy.cdm.persistence.hibernate.ICdmPostCrudObserver#update(eu.etaxonomy.cdm.persistence.hibernate.CdmCrudEvent)
 -       */
 -      /** {@inheritDoc} */
 -      @Override
 +        return conversation;
 +    }
 +
 +    /*
 +     * (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.persistence.hibernate.ICdmPostCrudObserver#update(eu.etaxonomy.cdm.persistence.hibernate.CdmCrudEvent)
 +     */
 +    /** {@inheritDoc} */
 +    @Override
      public void update(CdmDataChangeMap events) {
 -              if(dataChangeBehavior == null){
 -                      dataChangeBehavior = new TaxonEditorInputDataChangeBehaviour(this);
 -              }
 +        if(dataChangeBehavior == null){
 +            dataChangeBehavior = new TaxonEditorInputDataChangeBehaviour(this);
 +        }
  
 -              DataChangeBridge.handleDataChange(events, dataChangeBehavior);
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.ui.IPersistableElement#getFactoryId()
 -       */
 -      /**
 -       * <p>getFactoryId</p>
 -       *
 -       * @return a {@link java.lang.String} object.
 -       */
 -      @Override
 +        DataChangeBridge.handleDataChange(events, dataChangeBehavior);
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.ui.IPersistableElement#getFactoryId()
 +     */
 +    /**
 +     * <p>getFactoryId</p>
 +     *
 +     * @return a {@link java.lang.String} object.
 +     */
 +    @Override
      public String getFactoryId() {
 -              return TaxonEditorInputFactory.getFactoryId();
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.ui.IPersistable#saveState(org.eclipse.ui.IMemento)
 -       */
 -      /** {@inheritDoc} */
 -      @Override
 +        return TaxonEditorInputFactory.getFactoryId();
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.ui.IPersistable#saveState(org.eclipse.ui.IMemento)
 +     */
 +    /** {@inheritDoc} */
 +    @Override
      public void saveState(IMemento memento) {
 -              TaxonEditorInputFactory.saveState(memento, this);
 -      }
 +        TaxonEditorInputFactory.saveState(memento, this);
 +    }
  
  
      /**
       * @param taxonBase a {@link eu.etaxonomy.cdm.model.taxon.TaxonBase} object.
       */
      public void setInitiallySelectedTaxonBase(TaxonBase taxonBase) {
 -              this.initiallySelectedTaxonBase = taxonBase;
 -      }
 -
 -      /**
 -       * <p>Getter for the field <code>initiallySelectedTaxonBase</code>.</p>
 -       *
 -       * @return a {@link eu.etaxonomy.cdm.model.taxon.TaxonBase} object.
 -       */
 -      public TaxonBase getInitiallySelectedTaxonBase() {
 -              return initiallySelectedTaxonBase;
 -      }
 -
 -      @Override
 -      public String toString() {
 -              return String.format("%s[%s]", this.getClass().getSimpleName(), getTaxon());
 -      }
 +        this.initiallySelectedTaxonBase = taxonBase;
 +    }
 +
 +    /**
 +     * <p>Getter for the field <code>initiallySelectedTaxonBase</code>.</p>
 +     *
 +     * @return a {@link eu.etaxonomy.cdm.model.taxon.TaxonBase} object.
 +     */
 +    public TaxonBase getInitiallySelectedTaxonBase() {
 +        return initiallySelectedTaxonBase;
 +    }
 +
 +    @Override
 +    public String toString() {
 +        return String.format("%s[%s]", this.getClass().getSimpleName(), getTaxon());
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.taxeditor.editor.CdmEntitySessionInput#getService()
 +     */
 +    @Override
 +    public ITaxonNodeService getService() {
 +        return service;
 +    }
 +
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.taxeditor.editor.CdmEntitySessionInput#getRootEntities()
 +     */
 +    @Override
 +    public  List<TaxonNode> getRootEntities() {
 +        return Arrays.asList(taxonNode);
 +    }
 +
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.taxeditor.editor.CdmEntitySessionInput#update()
 +     */
 +    @Override
 +    public <T extends CdmBase> void update() {
 +        taxonNode = getCdmEntitySession().remoteUpdate(service, taxonNode);
 +    }
  }
index 630fb3009a2c4b6f81871c3178e968933b8926b0,3b4ae0d7ab1d1bcad784e2b7d041f4eabee34ad3..666078b85ffbc16795fb68c612c9ac139887d0fe
@@@ -1,5 -1,5 +1,5 @@@
  /**
 - * 
 + *
   */
  package eu.etaxonomy.taxeditor.editor.key.polytomous.operation;
  
@@@ -9,9 -9,11 +9,9 @@@ import org.eclipse.core.runtime.IAdapta
  import org.eclipse.core.runtime.IProgressMonitor;
  import org.eclipse.core.runtime.IStatus;
  import org.eclipse.jface.dialogs.MessageDialog;
 -import org.eclipse.ui.handlers.HandlerUtil;
  
  import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
  import eu.etaxonomy.cdm.api.service.IPolytomousKeyNodeService;
 -import eu.etaxonomy.cdm.api.service.ITaxonService;
  import eu.etaxonomy.cdm.model.description.PolytomousKeyNode;
  import eu.etaxonomy.taxeditor.operation.AbstractPostTaxonOperation;
  import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
@@@ -19,7 -21,7 +19,7 @@@ import eu.etaxonomy.taxeditor.store.Cdm
  
  /**
   * @author n.hoffmann
 - * 
 + *
   */
  public class DeleteNodeOperation extends AbstractPostTaxonOperation {
  
@@@ -35,7 -37,7 +35,7 @@@
  
        /*
         * (non-Javadoc)
 -       * 
 +       *
         * @see
         * org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse
         * .core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
        @Override
        public IStatus execute(IProgressMonitor monitor, IAdaptable info)
                        throws ExecutionException {
 -              
 +
                //parent.removeChild(node);
                ICdmApplicationConfiguration controller;
 -              
 -              controller = (ICdmApplicationConfiguration) CdmStore.getCurrentApplicationConfiguration();
 -              
 +
 +              controller = CdmStore.getCurrentApplicationConfiguration();
 +
                IPolytomousKeyNodeService service = controller.getPolytomousKeyNodeService();
+               
                if (node.getChildren().size()>0){
                        if(! MessageDialog.openQuestion(null, "Confirm deletion of children", "The selected node has children, do you want to delete them, too?")) {
                                service.delete(node.getUuid(), false);
@@@ -64,7 -67,7 +65,7 @@@
  
        /*
         * (non-Javadoc)
 -       * 
 +       *
         * @see
         * org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse
         * .core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
@@@ -77,7 -80,7 +78,7 @@@
  
        /*
         * (non-Javadoc)
 -       * 
 +       *
         * @see
         * org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse
         * .core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
index 569d7de93baca28ddae73b8579ffb2c2874b9c5d,a604e1bbd30c392326a3aec66ba2efcbcf606891..d7a47f3f49d3be393493aecedb7153ea57a23e14
@@@ -40,11 -40,11 +40,11 @@@ import eu.etaxonomy.cdm.model.common.Id
  import eu.etaxonomy.cdm.model.common.LSID;
  import eu.etaxonomy.cdm.model.common.Marker;
  import eu.etaxonomy.cdm.model.common.MarkerType;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.media.Rights;
  import eu.etaxonomy.cdm.model.view.AuditEvent;
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
  import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@@ -60,7 -60,7 +60,7 @@@ import eu.etaxonomy.cdm.strategy.merge.
   */
  public class TransientAgentService implements IAgentService {
  
 -    private IAgentService defaultService;
 +    private final IAgentService defaultService;
  
      /**
       * @param defaultAgentService
                return defaultService.convertTeam2Person(arg0);
        }
  
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
 +
  }
index 411728fafc2dd859372fe6642bd2f496a1faa988,5e33668e57a1e86744a9c0a8e23b71c23bab8058..887d9178cb0ad9af8e62b5478fd6ccf604e0ed53
@@@ -36,7 -36,6 +36,6 @@@ import eu.etaxonomy.cdm.model.common.Id
  import eu.etaxonomy.cdm.model.common.LSID;
  import eu.etaxonomy.cdm.model.common.Marker;
  import eu.etaxonomy.cdm.model.common.MarkerType;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.media.MediaRepresentation;
  import eu.etaxonomy.cdm.model.media.Rights;
  import eu.etaxonomy.cdm.model.name.Rank;
@@@ -47,6 -46,7 +46,7 @@@ import eu.etaxonomy.cdm.model.taxon.Tax
  import eu.etaxonomy.cdm.model.view.AuditEvent;
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
  import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@@ -942,13 -942,5 +942,13 @@@ public class TransientClassificationSer
         return defaultService.createHierarchyInClassification(arg1, arg2);
      }
  
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
 +
  
  }
index 5954bc758b537551958db7b99e07e1b1f1b102af,310c39c99000755cb7b24caf67d1d33eb5f2c4a6..244f5bb654d0d0897c21039143b3159e86c4b567
@@@ -33,12 -33,12 +33,12 @@@ import eu.etaxonomy.cdm.model.common.Id
  import eu.etaxonomy.cdm.model.common.LSID;
  import eu.etaxonomy.cdm.model.common.Marker;
  import eu.etaxonomy.cdm.model.common.MarkerType;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.media.Rights;
  import eu.etaxonomy.cdm.model.occurrence.Collection;
  import eu.etaxonomy.cdm.model.view.AuditEvent;
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
  import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@@ -703,12 -703,4 +703,12 @@@ public class TransientCollectionServic
        public <S extends Collection>  Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier, DefinedTerm identifierType, MatchMode matchmode, boolean includeEntity, Integer pageSize, Integer pageNumber, List<String> propertyPaths){
                return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
        }
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
  }
index 8324c4587c6339260fedbebe35ab2ea142e92e31,f804d48ef6c39bdb59ebd1125ddacd03c987bffa..1d3728ea54a033410d8f3cdba19d5a084fbfbcbb
@@@ -23,7 -23,6 +23,7 @@@ import org.hibernate.envers.query.crite
  import eu.etaxonomy.cdm.api.service.DeleteResult;
  import eu.etaxonomy.cdm.api.service.DistributionTree;
  import eu.etaxonomy.cdm.api.service.IDescriptionService;
 +import eu.etaxonomy.cdm.api.service.UpdateResult;
  import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
  import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
  import eu.etaxonomy.cdm.api.service.dto.FindByIdentifierDTO;
@@@ -38,7 -37,6 +38,6 @@@ import eu.etaxonomy.cdm.model.common.La
  import eu.etaxonomy.cdm.model.common.Marker;
  import eu.etaxonomy.cdm.model.common.MarkerType;
  import eu.etaxonomy.cdm.model.common.TermVocabulary;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.description.DescriptionBase;
  import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
  import eu.etaxonomy.cdm.model.description.Feature;
@@@ -56,6 -54,7 +55,7 @@@ import eu.etaxonomy.cdm.model.view.Audi
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
  import eu.etaxonomy.cdm.persistence.dto.TermDto;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
  import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@@ -1108,7 -1107,7 +1108,7 @@@ public class TransientDescriptionServic
        }
  
        @Override
 -      public UUID deleteDescription(DescriptionBase description) {
 +      public DeleteResult deleteDescription(DescriptionBase description) {
                return defaultService.deleteDescription(description);
        }
  
        public Pager<TermDto> pageNamedAreasInUse(boolean includeAllParents, Integer pageSize, Integer pageNumber) {
            return defaultService.pageNamedAreasInUse(includeAllParents, pageSize, pageNumber);
        }
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.deleteDescription(uuid);
 +    }
 +
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IDescriptionService#deleteDescription(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult deleteDescription(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IDescriptionService#deleteDescriptionElement(java.util.UUID)
 +     */
 +    @Override
 +    public UUID deleteDescriptionElement(UUID uuid) {
 +        return defaultService.deleteDescriptionElement(uuid);
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IDescriptionService#moveTaxonDescriptions(eu.etaxonomy.cdm.model.taxon.Taxon, eu.etaxonomy.cdm.model.taxon.Taxon)
 +     */
 +    @Override
 +    public UpdateResult moveTaxonDescriptions(Taxon sourceTaxon, Taxon targetTaxon) {
 +        return defaultService.moveTaxonDescriptions(sourceTaxon, targetTaxon);
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IDescriptionService#moveTaxonDescriptions(java.util.UUID, java.util.UUID)
 +     */
 +    @Override
 +    public UpdateResult moveTaxonDescriptions(UUID sourceTaxonUuid, UUID targetTaxonUuid) {
 +        return defaultService.moveTaxonDescriptions(sourceTaxonUuid, targetTaxonUuid);
 +    }
  }
index 05a570ddcda432af6847c0ea95cf7d0a76b29715,7daa4e43f1a92ff5e3666b1d60bdd32b2f0caf1c..baa86075b1658261069eea98a32fcf67a2a58830
@@@ -26,7 -26,6 +26,7 @@@ import org.hibernate.envers.query.crite
  
  import eu.etaxonomy.cdm.api.service.DeleteResult;
  import eu.etaxonomy.cdm.api.service.INameService;
 +import eu.etaxonomy.cdm.api.service.UpdateResult;
  import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
  import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
  import eu.etaxonomy.cdm.api.service.config.NameDeletionConfigurator;
@@@ -48,7 -47,6 +48,6 @@@ import eu.etaxonomy.cdm.model.common.Ma
  import eu.etaxonomy.cdm.model.common.ReferencedEntityBase;
  import eu.etaxonomy.cdm.model.common.RelationshipBase;
  import eu.etaxonomy.cdm.model.common.RelationshipBase.Direction;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.media.Rights;
  import eu.etaxonomy.cdm.model.name.HomotypicalGroup;
  import eu.etaxonomy.cdm.model.name.HybridRelationship;
@@@ -64,6 -62,7 +63,7 @@@ import eu.etaxonomy.cdm.model.name.Type
  import eu.etaxonomy.cdm.model.view.AuditEvent;
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
  import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@@ -79,7 -78,7 +79,7 @@@ import eu.etaxonomy.cdm.strategy.merge.
   */
  public class TransientNameService implements INameService {
  
 -    private INameService defaultService;
 +    private final INameService defaultService;
  
      /**
       *
        public TaxonNameBase findWithoutFlush(UUID uuid) {
                return defaultService.findWithoutFlush(uuid);
        }
 -      
 -      
  
        @Override
        public <S extends TaxonNameBase>  Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier, DefinedTerm identifierType, MatchMode matchmode, boolean includeEntity, Integer pageSize, Integer pageNumber, List<String> propertyPaths){
                return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
        }
  
 -      
 +
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.INameService#setAsGroupsBasionym(java.util.UUID)
 +     */
 +    @Override
 +    public UpdateResult setAsGroupsBasionym(UUID nameUuid) {
 +        return defaultService.delete(nameUuid);
 +    }
 +
  
        @Override
        public List<HashMap<String, String>> getNameRecords() {
 -              
 +
                return defaultService.getNameRecords();
        }
 -      
 -      
  
 -      
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
 +
  
  
  }
index 6c5ea95a07a9251e9af8dd332f6972b2eb2ac49b,40a46f02be7eb418a9e4595720f57330cf3f2546..db6c36790166260f48b6fba39d75c880abd88d5e
@@@ -49,7 -49,6 +49,6 @@@ import eu.etaxonomy.cdm.model.common.LS
  import eu.etaxonomy.cdm.model.common.Language;
  import eu.etaxonomy.cdm.model.common.Marker;
  import eu.etaxonomy.cdm.model.common.MarkerType;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.description.DescriptionBase;
  import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
  import eu.etaxonomy.cdm.model.description.IndividualsAssociation;
@@@ -69,6 -68,7 +68,7 @@@ import eu.etaxonomy.cdm.model.taxon.Tax
  import eu.etaxonomy.cdm.model.view.AuditEvent;
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
  import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@@ -1056,13 -1056,4 +1056,13 @@@ public class TransientOccurenceService 
            return defaultService.getAllHierarchyDerivatives(specimen);
        }
  
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
 +
 +
  }
index b91e24a459447787c932bff0f0bde46604dc78c0,1cb2f4869f65e0377fef7b1dd7c81a9226d9280c..b98fd1ee075e82eb1337002cee6de243d80986fe
@@@ -34,13 -34,13 +34,13 @@@ import eu.etaxonomy.cdm.model.common.Id
  import eu.etaxonomy.cdm.model.common.LSID;
  import eu.etaxonomy.cdm.model.common.Marker;
  import eu.etaxonomy.cdm.model.common.MarkerType;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.media.Rights;
  import eu.etaxonomy.cdm.model.reference.Reference;
  import eu.etaxonomy.cdm.model.taxon.TaxonBase;
  import eu.etaxonomy.cdm.model.view.AuditEvent;
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
  import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@@ -55,7 -55,7 +55,7 @@@ import eu.etaxonomy.cdm.strategy.merge.
   */
  public class TransientReferenceService implements IReferenceService {
  
 -    private IReferenceService defaultService;
 +    private final IReferenceService defaultService;
  
      /**
       * @param defaultReferenceService
        public Reference findWithoutFlush(UUID uuid) {
                return defaultService.findWithoutFlush(uuid);
        }
 -      
 +
        @Override
        public <S extends Reference>  Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier, DefinedTerm identifierType, MatchMode matchmode, boolean includeEntity, Integer pageSize, Integer pageNumber, List<String> propertyPaths){
                return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
        }
  
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
 +
  }
index 09045a7b42e7103e76c817a873dc7d7025a85810,b26a6e84f23db90bdb13fbc18c89311c9cd4e0aa..dde1d036494dd8455c1d0920841282f15a7d58e6
@@@ -27,7 -27,6 +27,7 @@@ import org.hibernate.envers.query.crite
  import eu.etaxonomy.cdm.api.service.DeleteResult;
  import eu.etaxonomy.cdm.api.service.ITaxonService;
  import eu.etaxonomy.cdm.api.service.TaxaAndNamesSearchMode;
 +import eu.etaxonomy.cdm.api.service.UpdateResult;
  import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
  import eu.etaxonomy.cdm.api.service.config.IFindTaxaAndNamesConfigurator;
  import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
@@@ -56,7 -55,6 +56,6 @@@ import eu.etaxonomy.cdm.model.common.Ma
  import eu.etaxonomy.cdm.model.common.OrderedTermVocabulary;
  import eu.etaxonomy.cdm.model.common.RelationshipBase;
  import eu.etaxonomy.cdm.model.common.RelationshipBase.Direction;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.description.DescriptionElementBase;
  import eu.etaxonomy.cdm.model.description.Feature;
  import eu.etaxonomy.cdm.model.description.PresenceAbsenceTerm;
@@@ -80,6 -78,7 +79,7 @@@ import eu.etaxonomy.cdm.model.taxon.Tax
  import eu.etaxonomy.cdm.model.view.AuditEvent;
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.fetch.CdmFetch;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
@@@ -1419,31 -1418,11 +1419,31 @@@ public class TransientTaxonService impl
            return defaultService.findByIdentifier(clazz, identifier, identifierType, subtreeFilter, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
        }
  
 -      
  
 -      
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteSynonym(java.util.UUID, java.util.UUID, eu.etaxonomy.cdm.api.service.config.SynonymDeletionConfigurator)
 +     */
 +    @Override
 +    public DeleteResult deleteSynonym(UUID synonymUuid, UUID taxonUuid, SynonymDeletionConfigurator config) {
 +        return defaultService.deleteSynonym(synonymUuid, taxonUuid, config);
 +    }
 +
  
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.ITaxonService#swapSynonymAndAcceptedTaxon(java.util.UUID, java.util.UUID)
 +     */
 +    @Override
 +    public UpdateResult swapSynonymAndAcceptedTaxon(UUID synonymUUid, UUID acceptedTaxonUuid) {
 +        return defaultService.swapSynonymAndAcceptedTaxon(synonymUUid, acceptedTaxonUuid);
 +    }
  
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.ITaxonService#deleteTaxon(java.util.UUID, eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator, java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult deleteTaxon(UUID taxonUuid, TaxonDeletionConfigurator config, UUID classificationUuid) {
 +        return defaultService.deleteTaxon(taxonUuid, config, classificationUuid);
 +    }
  
        @Override
        public SynonymRelationship moveSynonymToAnotherTaxon(
                        SynonymRelationshipType newSynonymRelationshipType,
                        Reference reference, String referenceDetail, boolean keepReference)
                        throws HomotypicalGroupChangeException {
 -              
 +
                return defaultService.moveSynonymToAnotherTaxon(oldSynonymRelation, newTaxonUUID, moveHomotypicGroup, newSynonymRelationshipType, reference, referenceDetail, keepReference);
        }
  
 -
 -
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
  
  }
index 7e1774615fde6a27b4900b1e9ee0289c54dcd2ae,4ade2430575cc4461698e941fb55970045e80384..4aff3590bd3c6d2bc34e864ec544e55c52bbbc70
@@@ -44,7 -44,6 +44,6 @@@ import eu.etaxonomy.cdm.model.common.Ma
  import eu.etaxonomy.cdm.model.common.MarkerType;
  import eu.etaxonomy.cdm.model.common.Representation;
  import eu.etaxonomy.cdm.model.common.TermType;
- import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
  import eu.etaxonomy.cdm.model.location.NamedArea;
  import eu.etaxonomy.cdm.model.location.NamedAreaLevel;
  import eu.etaxonomy.cdm.model.location.NamedAreaType;
@@@ -53,6 -52,7 +52,7 @@@ import eu.etaxonomy.cdm.model.media.Rig
  import eu.etaxonomy.cdm.model.view.AuditEvent;
  import eu.etaxonomy.cdm.model.view.AuditEventRecord;
  import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
+ import eu.etaxonomy.cdm.persistence.dto.UuidAndTitleCache;
  import eu.etaxonomy.cdm.persistence.query.Grouping;
  import eu.etaxonomy.cdm.persistence.query.MatchMode;
  import eu.etaxonomy.cdm.persistence.query.OrderHint;
@@@ -865,19 -865,11 +865,19 @@@ public class TransientTermService imple
        public DefinedTermBase findWithoutFlush(UUID uuid) {
                return defaultService.findWithoutFlush(uuid);
        }
 -      
 +
  
        @Override
        public <S extends DefinedTermBase>  Pager<FindByIdentifierDTO<S>> findByIdentifier(Class<S> clazz, String identifier, DefinedTerm identifierType, MatchMode matchmode, boolean includeEntity, Integer pageSize, Integer pageNumber, List<String> propertyPaths){
                return defaultService.findByIdentifier(clazz, identifier, identifierType, matchmode, includeEntity, pageSize, pageNumber, propertyPaths);
        }
  
 +    /* (non-Javadoc)
 +     * @see eu.etaxonomy.cdm.api.service.IService#delete(java.util.UUID)
 +     */
 +    @Override
 +    public DeleteResult delete(UUID uuid) {
 +        return defaultService.delete(uuid);
 +    }
 +
  }
index b41c09498e9e329be512bd24610fd0ff25a7ad27,868116c208841f12714ec1f7265d8557e9e81a2c..01bf873c5afdf670c0eb81b50edf62d82e794da2
@@@ -23,7 -23,6 +23,7 @@@ import eu.etaxonomy.cdm.api.service.IPo
  import eu.etaxonomy.cdm.model.description.PolytomousKey;
  import eu.etaxonomy.taxeditor.operation.AbstractPersistentPostOperation;
  import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 +import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
  import eu.etaxonomy.taxeditor.store.CdmStore;
  
  /**
@@@ -34,8 -33,7 +34,9 @@@
  public class DeleteOperation extends AbstractPersistentPostOperation {
  
        private final PolytomousKey key;
 +      private final ICdmEntitySessionEnabled cdmEntitySessionEnabled;
 +
        /**
         * @param label
         * @param undoContext
         */
        public DeleteOperation(String label, IUndoContext undoContext,
                        PolytomousKey key,
 -                      IPostOperationEnabled postOperationEnabled, IConversationEnabled conversationEnabled) {
 -              super(label, undoContext, postOperationEnabled, conversationEnabled);
 +                      IPostOperationEnabled postOperationEnabled,
 +                      IConversationEnabled conversationEnabled,
 +                      ICdmEntitySessionEnabled cdmEntitySessionEnabled) {
 +              super(label, undoContext, postOperationEnabled, conversationEnabled, cdmEntitySessionEnabled);
                this.key = key;
 +              this.cdmEntitySessionEnabled = cdmEntitySessionEnabled;
        }
  
-       /* (non-Javadoc)
-        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
-        */
        @Override
        public IStatus execute(IProgressMonitor monitor, IAdaptable info)
                        throws ExecutionException {
                bind();
  
                DeleteResult result = CdmStore.getService(IPolytomousKeyService.class).delete(key);
-               if (result.isError()){
-                       MessageDialog.openError(null, "Delete failed", result.getExceptions().get(0).getMessage());
 +
+               if (result.isError() && !result.getExceptions().isEmpty()){
+                       MessageDialog.openError(null, "Delete failed", result.getExceptions().iterator().next().getMessage());
  
-               } else if(result.isAbort()){
+               }else if(result.isAbort()){
                        MessageDialog.openWarning(null, "Delete abort", "The object could not be deleted, maybe there was no object selected.");
                }
  
                return postExecute(null);
        }
  
-       /* (non-Javadoc)
-        * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
-        */
        @Override
        public IStatus redo(IProgressMonitor monitor, IAdaptable info)
                        throws ExecutionException {
                return null;
        }
  
-       /* (non-Javadoc)
-        * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
-        */
        @Override
        public IStatus undo(IProgressMonitor monitor, IAdaptable info)
                        throws ExecutionException {
index 609e0fba4486bc7733c62212869b237bb9708f89,1f17047020c0cb07cca4806cc6edb94b48364a27..110ea271f4770b836072c38313dd32f108b349d8
@@@ -16,10 -16,11 +16,12 @@@ import org.eclipse.core.runtime.IAdapta
  import org.eclipse.core.runtime.IProgressMonitor;
  import org.eclipse.core.runtime.IStatus;
  import org.eclipse.core.runtime.Status;
+ import org.eclipse.jface.dialogs.MessageDialog;
  
  import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
+ import eu.etaxonomy.cdm.api.service.DeleteResult;
  import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
 +import eu.etaxonomy.cdm.api.service.UpdateResult;
  import eu.etaxonomy.cdm.api.service.config.TaxonDeletionConfigurator;
  import eu.etaxonomy.cdm.hibernate.HibernateProxyHelper;
  import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
@@@ -28,7 -29,6 +30,7 @@@ import eu.etaxonomy.cdm.model.taxon.Tax
  import eu.etaxonomy.taxeditor.model.MessagingUtils;
  import eu.etaxonomy.taxeditor.navigation.internal.TaxeditorNavigationPlugin;
  import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 +import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
  import eu.etaxonomy.taxeditor.store.CdmStore;
  
  /**
@@@ -42,8 -42,6 +44,8 @@@ public class ChangeAcceptedTaxonToSynon
        DeleteOperation {
  
        private final TaxonNode newAcceptedTaxonNode;
 +      private final ICdmEntitySessionEnabled cdmEntitySessionEnabled;
 +
  
        //private TaxonNode oldTaxonNode;
  
         * @param conversationEnabled a {@link eu.etaxonomy.cdm.api.conversation.IConversationEnabled} object.
         */
        public ChangeAcceptedTaxonToSynonymOperation(String label,
 -                      IUndoContext undoContext, ITaxonTreeNode oldTaxonNode, TaxonNode newAcceptedTaxonNode,
 -                      IPostOperationEnabled postOperationEnabled, IConversationEnabled conversationEnabled) {
 -              super(label, undoContext, oldTaxonNode, new TaxonDeletionConfigurator(),postOperationEnabled, conversationEnabled);
 +                      IUndoContext undoContext,
 +                      ITaxonTreeNode oldTaxonNode,
 +                      TaxonNode newAcceptedTaxonNode,
 +                      IPostOperationEnabled postOperationEnabled,
 +                      IConversationEnabled conversationEnabled,
 +            ICdmEntitySessionEnabled cdmEntitySessionEnabled) {
 +              super(label, undoContext, oldTaxonNode, new TaxonDeletionConfigurator(),postOperationEnabled, conversationEnabled, cdmEntitySessionEnabled);
                this.newAcceptedTaxonNode = newAcceptedTaxonNode;
 +              this.cdmEntitySessionEnabled = cdmEntitySessionEnabled;
        }
  
  
  
                monitor.worked(20);
                bind();
 +
        Taxon oldTaxon = (Taxon) HibernateProxyHelper.deproxy(((TaxonNode) taxonNode).getTaxon());
                try {
 -                  DeleteResult result = CdmStore.getService(ITaxonNodeService.class).makeTaxonNodeASynonymOfAnotherTaxonNode((TaxonNode) taxonNode, newAcceptedTaxonNode, null, null, null);
 -        
++
 +                  UpdateResult result = CdmStore.getService(ITaxonNodeService.class).makeTaxonNodeASynonymOfAnotherTaxonNode(taxonNode.getUuid(), newAcceptedTaxonNode.getUuid(), null, null, null);
-         } catch (IllegalArgumentException e) {
++      
+                   if (!result.getExceptions().isEmpty() && result.isOk()){
+                       String separator = ", ";
+                           String exceptionString = "";
+                           for (Exception exception : result.getExceptions()) {
+                           exceptionString += exception.getLocalizedMessage()+separator;
+                       }
+                               
+                       MessagingUtils.informationDialog("Synonym created but taxon is not deleted.", exceptionString);                 
+                   } else if (result.isAbort() || result.isError()){
+                       MessagingUtils.errorDialog("Synonym could not created", null, result.toString(), null, null, true);
+                   }
+               } catch (IllegalArgumentException e) {
              MessagingUtils.errorDialog("Operation failed", this, e.getMessage(), TaxeditorNavigationPlugin.PLUGIN_ID, e, false);
              return Status.CANCEL_STATUS;
          }
+               
                monitor.worked(40);
  
                return postExecute(oldTaxon);
index 692c5ad87611391286c581a354f7d98137f8bdf8,0471420414d1b0506c810a3593dbdb46c45d273a..22e14c2d490194a627480aa8868c3bf592990fdf
@@@ -1,18 -1,16 +1,18 @@@
  // $Id$
  /**
 -* Copyright (C) 2007 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.
 -*/
 + * Copyright (C) 2007 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.navigation.navigator.operation;
  
 +import java.util.HashSet;
  import java.util.Set;
 +import java.util.UUID;
  
  import org.eclipse.core.commands.ExecutionException;
  import org.eclipse.core.commands.operations.IUndoContext;
@@@ -33,7 -31,6 +33,7 @@@ import eu.etaxonomy.cdm.model.taxon.ITa
  import eu.etaxonomy.cdm.model.taxon.TaxonNode;
  import eu.etaxonomy.taxeditor.operation.AbstractPersistentPostOperation;
  import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
 +import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
  import eu.etaxonomy.taxeditor.store.CdmStore;
  
  /**
   */
  public class DeleteOperation extends AbstractPersistentPostOperation{
  
 -      private Set<ITaxonTreeNode> treeNodes;
 -      protected final TaxonDeletionConfigurator config;
 +    private Set<ITaxonTreeNode> treeNodes;
 +    protected final TaxonDeletionConfigurator config;
 +    private final ICdmEntitySessionEnabled cdmEntitySessionEnabled;
 +
 +    /**
 +     * <p>Constructor for DeleteTreeNodeOperation.</p>
 +     *
 +     * @param label a {@link java.lang.String} object.
 +     * @param undoContext a {@link org.eclipse.core.commands.operations.IUndoContext} object.
 +     * @param postOperationEnabled a {@link eu.etaxonomy.taxeditor.operation.IPostOperationEnabled} object.
 +     * @param conversationEnabled a {@link eu.etaxonomy.cdm.api.conversation.IConversationEnabled} object.
 +     * @param treeNodes a {@link java.util.Set} object.
 +     */
 +    public DeleteOperation(String label, IUndoContext undoContext,
 +            ITaxonTreeNode taxonNode, TaxonDeletionConfigurator config,
 +            IPostOperationEnabled postOperationEnabled,
 +            IConversationEnabled conversationEnabled,
 +            ICdmEntitySessionEnabled cdmEntitySessionEnabled) {
 +        super(label, undoContext, postOperationEnabled, conversationEnabled, cdmEntitySessionEnabled);
 +        this.taxonNode = (ITaxonTreeNode)CdmBase.deproxy(taxonNode, CdmBase.class);
 +        this.config = config;
 +        this.cdmEntitySessionEnabled = cdmEntitySessionEnabled;
 +    }
 +
 +    /**
 +     * <p>Constructor for DeleteTreeNodeOperation.</p>
 +     *
 +     * @param label a {@link java.lang.String} object.
 +     * @param undoContext a {@link org.eclipse.core.commands.operations.IUndoContext} object.
 +     * @param postOperationEnabled a {@link eu.etaxonomy.taxeditor.operation.IPostOperationEnabled} object.
 +     * @param conversationEnabled a {@link eu.etaxonomy.cdm.api.conversation.IConversationEnabled} object.
 +     * @param treeNodes a {@link java.util.Set} object.
 +     */
 +    public DeleteOperation(String label, IUndoContext undoContext,
 +            Set<ITaxonTreeNode> treeNodes, TaxonDeletionConfigurator config,
 +            IPostOperationEnabled postOperationEnabled,
 +            IConversationEnabled conversationEnabled,
 +            ICdmEntitySessionEnabled cdmEntitySessionEnabled) {
 +        super(label, undoContext, postOperationEnabled, conversationEnabled, cdmEntitySessionEnabled);
 +        this.treeNodes = treeNodes;
 +        this.config = config;
 +        this.cdmEntitySessionEnabled = cdmEntitySessionEnabled;
 +    }
  
  
-     /* (non-Javadoc)
-      * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
-      */
-     /** {@inheritDoc} */
-     @Override
-     public IStatus execute(IProgressMonitor monitor, IAdaptable info)
-             throws ExecutionException {
-         bind();
-         monitor.worked(20);
-         ICdmApplicationConfiguration controller = CdmStore.getCurrentApplicationConfiguration();
-         ITaxonNodeService service = controller.getTaxonNodeService();
-         DeleteResult result;
 -      /**
 -       * <p>Constructor for DeleteTreeNodeOperation.</p>
 -       *
 -       * @param label a {@link java.lang.String} object.
 -       * @param undoContext a {@link org.eclipse.core.commands.operations.IUndoContext} object.
 -       * @param postOperationEnabled a {@link eu.etaxonomy.taxeditor.operation.IPostOperationEnabled} object.
 -       * @param conversationEnabled a {@link eu.etaxonomy.cdm.api.conversation.IConversationEnabled} object.
 -       * @param treeNodes a {@link java.util.Set} object.
 -       */
 -      public DeleteOperation(String label, IUndoContext undoContext,
 -                      ITaxonTreeNode taxonNode, TaxonDeletionConfigurator config,
 -                      IPostOperationEnabled postOperationEnabled,
 -                      IConversationEnabled conversationEnabled) {
 -              super(label, undoContext, postOperationEnabled, conversationEnabled);
 -              this.taxonNode = (ITaxonTreeNode)CdmBase.deproxy(taxonNode, CdmBase.class);
 -              this.config = config;
 -      }
--
-         if(taxonNode != null && taxonNode instanceof TaxonNode) {
 -      /**
 -       * <p>Constructor for DeleteTreeNodeOperation.</p>
 -       *
 -       * @param label a {@link java.lang.String} object.
 -       * @param undoContext a {@link org.eclipse.core.commands.operations.IUndoContext} object.
 -       * @param postOperationEnabled a {@link eu.etaxonomy.taxeditor.operation.IPostOperationEnabled} object.
 -       * @param conversationEnabled a {@link eu.etaxonomy.cdm.api.conversation.IConversationEnabled} object.
 -       * @param treeNodes a {@link java.util.Set} object.
 -       */
 -      public DeleteOperation(String label, IUndoContext undoContext,
 -                      Set<ITaxonTreeNode> treeNodes, TaxonDeletionConfigurator config,
 -                      IPostOperationEnabled postOperationEnabled,
 -                      IConversationEnabled conversationEnabled) {
 -              super(label, undoContext, postOperationEnabled, conversationEnabled);
 -              this.treeNodes = treeNodes;
 -              this.config = config;
 -      }
  
-             element = ((TaxonNode)taxonNode).getTaxon();
  
-             result = service.deleteTaxonNode(taxonNode.getUuid(), config);
-             if (result.isError() || result.isAbort()){
-                 MessageDialog.openError(null, "Delete failed", result.getExceptions().get(0).getMessage());
-             }
-         } else if(taxonNode != null && taxonNode instanceof Classification) {
-             Classification taxonomicTree = (Classification) taxonNode;
-             /*if(taxonomicTree.hasChildNodes()){
-                                       if(! MessageDialog.openConfirm(null, "Confirm Deletion", "The selected tree has children, do yu realy want to delete the whole tree with its children?")){
-                                               return null;
-                                       }
-                               }*/
+       /* (non-Javadoc)
+        * @see org.eclipse.core.commands.operations.AbstractOperation#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
+        */
+       /** {@inheritDoc} */
+       @Override
+       public IStatus execute(IProgressMonitor monitor, IAdaptable info)
+                       throws ExecutionException {
+               bind();
+               monitor.worked(20);
+               ICdmApplicationConfiguration controller = CdmStore.getCurrentApplicationConfiguration();
+               ITaxonNodeService service = controller.getTaxonNodeService();
+                       if(taxonNode != null && taxonNode instanceof TaxonNode){
+                               //((TaxonNode) treeNode).delete();
+                               element = ((TaxonNode)taxonNode).getTaxon();
+                               DeleteResult result = service.deleteTaxonNode((TaxonNode)taxonNode, config);
+                               if (result.isError() && !result.getExceptions().isEmpty()){
+                                       //TODO:Error message!
+                                       MessageDialog.openError(null, "Delete failed", result.getExceptions().iterator().next().getMessage());
+                               } else if (!result.getExceptions().isEmpty()){
+                                       String separator = ", ";
+                                   String exceptionString = "";
+                                   for (Exception exception : result.getExceptions()) {
+                                   exceptionString += exception.getLocalizedMessage()+separator;
+                               }
+                                       MessageDialog.openInformation(null, "Delete of the node was successful but the taxon could not be deleted.", exceptionString);
+                               }
+                       }else if(taxonNode != null && taxonNode instanceof Classification){
+                               Classification taxonomicTree = (Classification) taxonNode;
 -                              /*if(taxonomicTree.hasChildNodes()){
 -                                      if(! MessageDialog.openConfirm(null, "Confirm Deletion", "The selected tree has children, do yu realy want to delete the whole tree with its children?")){
 -                                              return null;
 -                                      }
 -                              }*/
  
 -                              DeleteResult result = CdmStore.getService(IClassificationService.class).delete(taxonomicTree);
 -                              if (result.isError() && !result.getExceptions().isEmpty()){
 -                                      //TODO:Error message!
 -                                      MessageDialog.openError(null, "Delete failed", result.getExceptions().iterator().next().getMessage());
 -                              }
 -
 -                              /*}else{
 -                                      try{
 -                                      CdmStore.getService(IClassificationService.class).delete(taxonomicTree);
 -                                      }catch(ReferencedObjectUndeletableException e){
 -                                              throw new ExecutionException(e.getMessage());
 -                                      }
 -                              }*/
 -                      } else {
 -
 -                              DeleteResult result =service.deleteTaxonNodes(treeNodes, config);
 -                              if (result.isError() && !result.getExceptions().isEmpty()){
 -                                      //TODO:Error message!
 -                                      MessageDialog.openError(null, "Delete failed", result.getExceptions().iterator().next().getMessage());
 -                              }
 +            result = CdmStore.getService(IClassificationService.class).delete(taxonomicTree.getUuid());
 +            if (result.isError() || result.isAbort()){
 +                MessageDialog.openError(null, "Delete failed", result.getExceptions().get(0).getMessage());
 +            }
 +
 +        } else {
 +            Set<UUID> treeNodeUuids = new HashSet<UUID>();
 +            ITaxonTreeNode entity = null;
 +            for(ITaxonTreeNode treeNode : treeNodes) {
 +                if(entity == null) {
 +                    entity = treeNode;
 +                }
 +                treeNodeUuids.add(treeNode.getUuid());
 +            }
 +
-             result = service.deleteTaxonNodes(treeNodeUuids, config);
-             if (result.isError() || result.isAbort()){
-                 MessageDialog.openError(null, "Delete failed", result.getExceptions().get(0).getMessage());
-             }
++            Delete result = service.deleteTaxonNodes(treeNodeUuids, config);
++            if (result.isError() && !result.getExceptions().isEmpty()){
++                              //TODO:Error message!
++                              MessageDialog.openError(null, "Delete failed", result.getExceptions().iterator().next().getMessage());
+                       }
  
 -              monitor.worked(40);
 -              return postExecute(null);
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
 -       */
 -      /** {@inheritDoc} */
 -      @Override
 -      public IStatus redo(IProgressMonitor monitor, IAdaptable info)
 -                      throws ExecutionException {
 -              return null;
 -      }
 -
 -      /* (non-Javadoc)
 -       * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
 -       */
 -      /** {@inheritDoc} */
 -      @Override
 -      public IStatus undo(IProgressMonitor monitor, IAdaptable info)
 -                      throws ExecutionException {
 -              return null;
 -      }
 +        }
 +
 +        monitor.worked(40);
 +
 +        return postExecute(null);
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.core.commands.operations.AbstractOperation#redo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
 +     */
 +    /** {@inheritDoc} */
 +    @Override
 +    public IStatus redo(IProgressMonitor monitor, IAdaptable info)
 +            throws ExecutionException {
 +        return null;
 +    }
 +
 +    /* (non-Javadoc)
 +     * @see org.eclipse.core.commands.operations.AbstractOperation#undo(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
 +     */
 +    /** {@inheritDoc} */
 +    @Override
 +    public IStatus undo(IProgressMonitor monitor, IAdaptable info)
 +            throws ExecutionException {
 +        return null;
 +    }
  }
index 6c7f7161ca02dc3b2441591ed2cd4a673f622ea1,82550414bc3fae12207efa57711d0140b5bf86a0..bdcf8cc3d8293962795521c636595c46a67d4afe
@@@ -3,20 -3,16 +3,20 @@@
   */
  package eu.etaxonomy.taxeditor.newWizard;
  
 +import java.util.HashSet;
 +import java.util.Set;
  import java.util.UUID;
  
  import org.apache.commons.lang.StringUtils;
  
  import eu.etaxonomy.cdm.api.service.IClassificationService;
  import eu.etaxonomy.cdm.api.service.ITaxonNodeService;
 +import eu.etaxonomy.cdm.model.common.CdmBase;
  import eu.etaxonomy.cdm.model.taxon.Classification;
  import eu.etaxonomy.cdm.model.taxon.ITaxonTreeNode;
  import eu.etaxonomy.cdm.model.taxon.Taxon;
  import eu.etaxonomy.cdm.model.taxon.TaxonNode;
 +import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeEvent.EventType;
  import eu.etaxonomy.taxeditor.model.MessagingUtils;
  import eu.etaxonomy.taxeditor.store.CdmStore;
  import eu.etaxonomy.taxeditor.ui.section.classification.TaxonNodeWizardPage;
@@@ -33,10 -29,11 +33,11 @@@ public class NewTaxonNodeWizard extend
        private TaxonNodeWizardPage taxonNodePage;
        private boolean openEmptyEditor;
        private UUID generatedTaxonNodeUuid;
+     private IWizardPageListener wizardPageListener;
  
        @Override
        public void addPages() {
-               taxonNodePage = new TaxonNodeWizardPage(formFactory, getConversationHolder(), getEntity());
+               taxonNodePage = new TaxonNodeWizardPage(formFactory, getConversationHolder(), getEntity(), wizardPageListener);
                addPage(taxonNodePage);
        }
  
                        Taxon taxon = taxonNodePage.getTaxon();
                        try{
                                TaxonNode taxonNode = parent.addChildTaxon(taxon, parent.getReference(), parent.getMicroReference());
 -                              generatedTaxonNodeUuid = CdmStore.getService(ITaxonNodeService.class).saveOrUpdate(taxonNode);
 +                              taxonNode = CdmStore.getService(ITaxonNodeService.class).merge(taxonNode);
 +                              generatedTaxonNodeUuid = taxonNode.getUuid();
 +                              Set<CdmBase> affectedObjects = new HashSet<CdmBase>();
 +                      affectedObjects.add((TaxonNode)parent);
 +                              CdmStore.getCurrentSessionManager().getActiveSession().addEvent(taxonNode, affectedObjects, EventType.INSERT);
 +                              CdmStore.getCurrentSessionManager().getActiveSession().fireNotifications();
                        }catch(IllegalArgumentException e){
                                MessagingUtils.warningDialog("Taxon already exists in classfication", getClass(), e.getMessage());
                        }
                return "Taxon";
        }
  
+       public void addWizardPageListener(IWizardPageListener wizardPageListener){
+           this.wizardPageListener = wizardPageListener;
+       }
  }
index 850f194b2744672a603e68287327db12c1f585ad,f174f86773252b951c855dcd41951a105f44c0a9..7aff87c884c02bde7566fb0a97a5f976100751ac
@@@ -28,9 -28,9 +28,9 @@@ import eu.etaxonomy.cdm.config.ICdmSour
  import eu.etaxonomy.cdm.database.DbSchemaValidation;
  import eu.etaxonomy.cdm.database.ICdmDataSource;
  import eu.etaxonomy.cdm.model.metadata.CdmMetaData;
 -import eu.etaxonomy.cdm.remote.ICdmRemoteSource;
  import eu.etaxonomy.taxeditor.model.CdmProgressMonitorAdapter;
  import eu.etaxonomy.taxeditor.model.MessagingUtils;
 +import eu.etaxonomy.taxeditor.remoting.source.ICdmRemoteSource;
  import eu.etaxonomy.taxeditor.ui.dialog.LoginDialog;
  import eu.etaxonomy.taxeditor.view.datasource.CdmDataSourceViewPart;
  
@@@ -155,6 -155,7 +155,6 @@@ class CdmStoreConnector extends Job 
                                        subprogressMonitor);
                } else if(cdmSource instanceof ICdmRemoteSource) {
                        return CdmApplicationRemoteController.NewInstance((ICdmRemoteSource)cdmSource,
 -                                                      false,
                                                        subprogressMonitor,
                                                        null);
                } else {
        private void checkDbSchemaVersionCompatibility(IProgressMonitor monitor) {
                monitor.subTask("Checking if datasource is compatible with this editor.");
                String dbSchemaVersion;
-               boolean result = false;
+               String message = null;
                try {
                        dbSchemaVersion = cdmSource.getDbSchemaVersion();
                        // we assume that empty dbSchemaVersion means an empty database and
                        // skip version checking
-                       result = dbSchemaVersion == null ? true : CdmMetaData
-                                       .isDbSchemaVersionCompatible(dbSchemaVersion);
+                       if(dbSchemaVersion != null) {
+                           int compareVersion = CdmMetaData.compareVersion(dbSchemaVersion, CdmMetaData.getDbSchemaVersion(), 3, null);
+                           // if the datasource version is greater than the taxeditor compatible version then the taxeditor needs to
+                           // be updated else the datasource needs to be updated
+                           if(compareVersion > 0) {
+                               message = "Please update the Taxonomic Editor (Help->Check for Updates) or choose a compatible datasource";
+                           } else if (compareVersion < 0) {
+                               message = "Please update the chosen datasource or choose a new data source to connect to in the Datasource View.";
+                           }
+                       }
                        monitor.worked(1);
                } catch (CdmSourceException e) {
                        //
                }
  
-               if (!result) {
+               if (message != null) {
                        // Show an error message
                        MessagingUtils
                                        .messageDialog(
-                                                       "DatabaseCompatibilityCheck failed",
+                                                       "Datasource Compatibility Check failed",
                                                        this,
                                                        "The database schema for the chosen "
                                                                        + "datasource '"
                                                                        + cdmSource
-                                                                       + "' \n is not valid for this version of the taxonomic editor. \n"
-                                                                       + "Please update the chosen datasource or choose a new data source to connect to in the Datasource View.",
+                                                                       + "' \n is not compatible for this version of the taxonomic editor. \n\n"
+                                                                       + message,
                                                        null);
  
                        monitor.setCanceled(true);
index 37a197abdf42641b1f2166859c31528f0a4f5553,f47b6522748578ba74323b31a8629bebc96a46a3..af4a0a6a2e82857ea9e6bef40f65120c12f99118
@@@ -3,7 -3,7 +3,7 @@@
    <parent>
      <groupId>eu.etaxonomy</groupId>
      <artifactId>taxeditor-parent</artifactId>
-     <version>3.5.2-SNAPSHOT</version>
+     <version>3.6.1-SNAPSHOT</version>
    </parent>
  
    <modelVersion>4.0.0</modelVersion>
    <name>EDIT Taxonomic Editor Product</name>
    <description>The EDIT Taxonomic Desktop Editor</description>
    <url>http://wp5.e-taxonomy.eu/taxeditor</url>
 -  <properties>    
 +  <properties>
      <product.id>eu.etaxonomy.taxeditor.product</product.id>
    </properties>
 -  <build>
 -    <plugins>
 -      <plugin>
 -        <groupId>org.eclipse.tycho</groupId>
 -        <artifactId>tycho-p2-director-plugin</artifactId>
 -        <version>${tycho.version}</version>
 -        <executions>
 -          <execution>
 -            <id>materialize-products</id>
 -            <goals>
 -              <goal>materialize-products</goal>
 -            </goals>
 -          </execution>
 -          <execution>
 -            <id>archive-products</id>
 -            <goals>
 -              <goal>archive-products</goal>
 -            </goals>
 -          </execution>
 -        </executions>
 -        <configuration>
 -          <products>
 -            <product>
 -              <id>${product.id}</id>
 -              <rootFolder>EDIT Taxonomic Editor</rootFolder>
 -            </product>
 -          </products>
 -        </configuration>
 -      </plugin>
 -    </plugins>
 -  </build>
 +
    <profiles>
 +    <profile>
 +      <id>buildProducts</id>
 +      <build>
 +        <plugins>
 +          <plugin>
 +            <groupId>org.eclipse.tycho</groupId>
 +            <artifactId>tycho-p2-director-plugin</artifactId>
 +            <version>${tycho.version}</version>
 +            <executions>
 +              <execution>
 +                <id>materialize-products</id>
 +                <goals>
 +                  <goal>materialize-products</goal>
 +                </goals>
 +              </execution>
 +              <execution>
 +                <id>archive-products</id>
 +                <goals>
 +                  <goal>archive-products</goal>
 +                </goals>
 +              </execution>
 +            </executions>
 +            <configuration>
 +              <products>
 +                <product>
 +                  <id>${product.id}</id>
 +                  <rootFolder>EDIT Taxonomic Editor</rootFolder>
 +                </product>
 +              </products>
 +            </configuration>
 +          </plugin>
 +        </plugins>
 +      </build>
 +    </profile>
      <profile>
        <id>signJars</id>
        <build>
diff --combined pom.xml
index 1667aea57cd9c7a9f6a36e2d8cb5c67bd8036f6b,1913b28881967453f57b96a9b5a0cab5421bf219..2e34d58d9051f1e222bc05eb7d37d00ef5e43fc6
+++ b/pom.xml
@@@ -6,7 -6,7 +6,7 @@@
    </prerequisites>
    <groupId>eu.etaxonomy</groupId>
    <artifactId>taxeditor-parent</artifactId>
-   <version>3.5.2-SNAPSHOT</version>
+   <version>3.6.1-SNAPSHOT</version>
    <name>EDIT Taxonomic Editor</name>
    <description>The Taxonomic Editor for EDIT's platform for
      cybertaxonomy
    <properties>
      <java.codelevel>1.6</java.codelevel>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-     <cdmlib.version>3.5.2-SNAPSHOT</cdmlib.version>
+     <cdmlib.version>3.6.1-SNAPSHOT</cdmlib.version>
      <!-- TODO can we use project.version ????? -->
      <tycho.version>0.22.0</tycho.version>
-     <taxeditor.version>3.5.2-SNAPSHOT</taxeditor.version>
+     <taxeditor.version>3.6.1-SNAPSHOT</taxeditor.version>
      <update.dir>snapshot</update.dir>
 +    <unitils.version>3.4.2</unitils.version>
    </properties>
    <modules>
      <module>eu.etaxonomy.taxeditor.cdmlib</module>