merge-update from trunk
authorPatric Plitzner <p.plitzner@bgbm.org>
Mon, 27 Oct 2014 13:45:51 +0000 (13:45 +0000)
committerPatric Plitzner <p.plitzner@bgbm.org>
Mon, 27 Oct 2014 13:45:51 +0000 (13:45 +0000)
121 files changed:
.gitattributes
.gitignore
eu.etaxonomy.taxeditor.application/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.application/pom.xml
eu.etaxonomy.taxeditor.bulkeditor/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.bulkeditor/plugin.xml
eu.etaxonomy.taxeditor.bulkeditor/pom.xml
eu.etaxonomy.taxeditor.editor/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.editor/plugin.xml
eu.etaxonomy.taxeditor.editor/pom.xml
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/molecular/AlignmentEditor.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditorContextMenu.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportView.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/derivate/DerivateContentProvider.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateDropListener.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateView.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateDerivateContextMenu.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.feature.platform/LICENSE.TXT [new file with mode: 0644]
eu.etaxonomy.taxeditor.feature.platform/feature.xml
eu.etaxonomy.taxeditor.feature.platform/pom.xml
eu.etaxonomy.taxeditor.feature/LICENSE.TXT [new file with mode: 0644]
eu.etaxonomy.taxeditor.feature/feature.xml
eu.etaxonomy.taxeditor.feature/pom.xml
eu.etaxonomy.taxeditor.help/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.help/pom.xml
eu.etaxonomy.taxeditor.navigation/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.navigation/pom.xml
eu.etaxonomy.taxeditor.printpublisher/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.printpublisher/pom.xml
eu.etaxonomy.taxeditor.remoting/.classpath [deleted file]
eu.etaxonomy.taxeditor.remoting/.project [deleted file]
eu.etaxonomy.taxeditor.remoting/.settings/org.eclipse.jdt.core.prefs [deleted file]
eu.etaxonomy.taxeditor.remoting/.settings/org.eclipse.pde.core.prefs [deleted file]
eu.etaxonomy.taxeditor.remoting/META-INF/MANIFEST.MF [deleted file]
eu.etaxonomy.taxeditor.remoting/build.properties [deleted file]
eu.etaxonomy.taxeditor.remoting/pom.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteConfiguration.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteController.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/cache/CdmServiceCacher.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmPersistentRemoteSource.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSource.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceBase.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceException.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/ICdmRemoteSource.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/taxeditor/remoting/RemotingTestPluginActivator.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/org/hibernate/collection/internal/AbstractPersistentCollection.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/java/org/hibernate/proxy/AbstractLazyInitializer.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/jetty-runner-9.2.3.v20140905.jar [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/start-9.2.3.v20140905.jar [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/config.properties [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/httpInvokerServiceClients.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/localApplicationContext.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remotingApplicationContext.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remoting_persistence_security.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remoting_services_security.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/exception/CDMServerException.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/BaseRemotingTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CDMServer.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmPersistentRemoteSourceTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmRemoteSourceTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmServerTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/HttpInvokerServicesTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/CdmServiceCacherTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/RemoteLazyLoadingTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/RemotePersistentCollectionTest.java [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/resources/datasources.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/resources/eu/etaxonomy/cdm/cdm.datasources.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/resources/eu/etaxonomy/cdm/testRemotingApplicationContext.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/resources/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.xml [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/resources/h2/cdmTest.h2.db [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/resources/h2/cdmTest.trace.db [deleted file]
eu.etaxonomy.taxeditor.remoting/src/test/resources/unitils.properties [deleted file]
eu.etaxonomy.taxeditor.store/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.store/icons/character_data_derivate-16x16-32.png [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/pom.xml
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/wizard/AbstractImportWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/model/ImageResources.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/parser/ParseHandler.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/store/CdmStore.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/ReferenceSelectionDialog.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/CdmFormFactory.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/NumberWithLabelElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/OriginalLabelDataElement.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/OriginalLabelDataController.java [deleted file]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/OriginalLabelDataElement.java [deleted file]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/OriginalLabelDataField.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/element/DateElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/openurl/OpenUrlSelectorWizard.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/CurrentDeterminationDetailSection.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/DerivedUnitGeneralDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/FieldUnitGeneralDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/OriginalLabelDataSection.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/AbstractSampleDesignationDetailSection.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/CurrentSampleDesignationDetailSection.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaQualityDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaSampleGeneralDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/PrimerGeneralDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SampleDesignationDetailElement.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SampleDesignationDetailSection.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SampleDesignationHistoryDetailSection.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SampleDesignationTextDetailElement.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SequenceGeneralDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/TissueSampleGeneralDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/TissueSampleGeneralDetailSection.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/media/MediaSpecimenGeneralDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/reference/ReferenceDetailElement.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/datasource/handler/UpdateDataSourceHandler.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateLabelProvider.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateSearchCompositeController.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/derivateSearch/DerivateSearchView.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/CdmSectionPart.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewer.java
eu.etaxonomy.taxeditor.test/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.test/pom.xml
eu.etaxonomy.taxeditor/eu.etaxonomy.taxeditor.product
eu.etaxonomy.taxeditor/pom.xml
pom.xml

index 602aaca4f08bfb72d12850cf13c115a07ebc3382..b784f78f8a5a880c0f409c51759c8a9355a7591c 100644 (file)
@@ -548,6 +548,8 @@ eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/d
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/CreateDerivateContextMenu.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/DerivateViewContextMenu.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/contextMenu/SingleReadSequenceContextMenu.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementDragListener.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementDropAdapter.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/descriptive/DescriptionElementTransfer.java -text
@@ -623,10 +625,12 @@ eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/o
 eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/MoveTaxonOperationTest.java -text
 eu.etaxonomy.taxeditor.editor/src/test/java/eu/etaxonomy/taxeditor/editor/name/operation/SwapSynonymAndAcceptedOperationTest.java -text
 eu.etaxonomy.taxeditor.feature.platform/.project -text
+eu.etaxonomy.taxeditor.feature.platform/LICENSE.TXT -text
 eu.etaxonomy.taxeditor.feature.platform/build.properties -text
 eu.etaxonomy.taxeditor.feature.platform/feature.xml -text
 eu.etaxonomy.taxeditor.feature.platform/pom.xml -text
 eu.etaxonomy.taxeditor.feature/.project -text
+eu.etaxonomy.taxeditor.feature/LICENSE.TXT -text
 eu.etaxonomy.taxeditor.feature/build.properties -text
 eu.etaxonomy.taxeditor.feature/feature.xml -text
 eu.etaxonomy.taxeditor.feature/pom.xml -text
@@ -1015,50 +1019,6 @@ eu.etaxonomy.taxeditor.printpublisher/src/main/java/eu/etaxonomy/taxeditor/print
 eu.etaxonomy.taxeditor.printpublisher/src/main/java/eu/etaxonomy/taxeditor/printpublisher/wizard/SelectServiceWizardPage.java -text
 eu.etaxonomy.taxeditor.printpublisher/src/main/java/eu/etaxonomy/taxeditor/printpublisher/wizard/SelectStylesheetWizardPage.java -text
 eu.etaxonomy.taxeditor.printpublisher/src/main/java/eu/etaxonomy/taxeditor/printpublisher/wizard/SelectTaxaWizardPage.java -text
-eu.etaxonomy.taxeditor.remoting/.classpath -text
-eu.etaxonomy.taxeditor.remoting/.project -text
-eu.etaxonomy.taxeditor.remoting/.settings/org.eclipse.jdt.core.prefs -text
-eu.etaxonomy.taxeditor.remoting/.settings/org.eclipse.pde.core.prefs -text
-eu.etaxonomy.taxeditor.remoting/META-INF/MANIFEST.MF -text
-eu.etaxonomy.taxeditor.remoting/build.properties -text
-eu.etaxonomy.taxeditor.remoting/pom.xml -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteConfiguration.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteController.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/cache/CdmServiceCacher.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmPersistentRemoteSource.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSource.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceBase.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceException.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/ICdmRemoteSource.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/taxeditor/remoting/RemotingTestPluginActivator.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/org/hibernate/collection/internal/AbstractPersistentCollection.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/java/org/hibernate/proxy/AbstractLazyInitializer.java -text
-eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/jetty-runner-9.2.3.v20140905.jar -text
-eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/start-9.2.3.v20140905.jar -text
-eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/config.properties -text
-eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/httpInvokerServiceClients.xml -text
-eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/localApplicationContext.xml -text
-eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remotingApplicationContext.xml -text
-eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remoting_persistence_security.xml -text
-eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remoting_services_security.xml -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/exception/CDMServerException.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/BaseRemotingTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CDMServer.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmPersistentRemoteSourceTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmRemoteSourceTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmServerTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/HttpInvokerServicesTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/CdmServiceCacherTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/RemoteLazyLoadingTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/RemotePersistentCollectionTest.java -text
-eu.etaxonomy.taxeditor.remoting/src/test/resources/datasources.xml -text
-eu.etaxonomy.taxeditor.remoting/src/test/resources/eu/etaxonomy/cdm/cdm.datasources.xml -text
-eu.etaxonomy.taxeditor.remoting/src/test/resources/eu/etaxonomy/cdm/testRemotingApplicationContext.xml -text
-eu.etaxonomy.taxeditor.remoting/src/test/resources/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.xml -text
-eu.etaxonomy.taxeditor.remoting/src/test/resources/h2/cdmTest.h2.db -text
-eu.etaxonomy.taxeditor.remoting/src/test/resources/h2/cdmTest.trace.db -text
-eu.etaxonomy.taxeditor.remoting/src/test/resources/unitils.properties -text
 eu.etaxonomy.taxeditor.store/.classpath -text
 eu.etaxonomy.taxeditor.store/.project -text
 eu.etaxonomy.taxeditor.store/META-INF/MANIFEST.MF -text
@@ -1099,6 +1059,7 @@ eu.etaxonomy.taxeditor.store/icons/binary.gif -text
 eu.etaxonomy.taxeditor.store/icons/bookmark.gif -text
 eu.etaxonomy.taxeditor.store/icons/category.gif -text
 eu.etaxonomy.taxeditor.store/icons/change.gif -text
+eu.etaxonomy.taxeditor.store/icons/character_data_derivate-16x16-32.png -text
 eu.etaxonomy.taxeditor.store/icons/clear.gif -text
 eu.etaxonomy.taxeditor.store/icons/close.gif -text
 eu.etaxonomy.taxeditor.store/icons/close_view.gif -text
@@ -1492,6 +1453,7 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/Lay
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/MinMaxTextSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/MultilanguageTextElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/NumberWithLabelElement.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/OriginalLabelDataElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/PartialElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/PointElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/RootElement.java -text
@@ -1509,8 +1471,7 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/group/grant
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/AbstractCdmComposite.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/DerivedUnitGeneralDetailElementMVC.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/GeographicPointElement.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/OriginalLabelDataController.java -text
-eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/OriginalLabelDataElement.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/OriginalLabelDataField.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/combo/EnumTermCombo.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/combo/EnumTermComboController.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/mvc/element/DateElement.java -text
@@ -1687,6 +1648,7 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occ
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/derivedUnit/PreservedSpecimenGeneralDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/derivedUnit/PreservedSpecimenGeneralDetailSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/derivedUnit/PreservedSpecimenSourceCollectionDetailSection.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/AbstractSampleDesignationDetailSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/AbstractUnboundEntityCollectionSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/AmplificationCloningDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/AmplificationCloningDetailSection.java -text
@@ -1696,11 +1658,16 @@ eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occ
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/AmplificationGeneralDetailSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/AmplificationPrimerDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/AmplificationPrimerDetailSection.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/CurrentSampleDesignationDetailSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaQualityDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaQualityDetailSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaSampleGeneralDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/DnaSampleGeneralDetailSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/PrimerGeneralDetailElement.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SampleDesignationDetailElement.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SampleDesignationDetailSection.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SampleDesignationHistoryDetailSection.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SampleDesignationTextDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SequenceContigFileCollectionDetailSection.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SequenceGeneralDetailElement.java -text
 eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/section/occurrence/dna/SequenceGeneralDetailSection.java -text
index 15187a3bd1e92944a0cc4086f50ff556e3bb9f93..5c8b928b8e9810e6ba3615b0efdeead665c5c54d 100644 (file)
@@ -31,8 +31,6 @@ eu.etaxonomy.taxeditor.navigation/.settings
 eu.etaxonomy.taxeditor.navigation/target
 eu.etaxonomy.taxeditor.printpublisher/.settings
 eu.etaxonomy.taxeditor.printpublisher/target
-eu.etaxonomy.taxeditor.remoting/lib/*
-eu.etaxonomy.taxeditor.remoting/target
 eu.etaxonomy.taxeditor.store/.settings
 eu.etaxonomy.taxeditor.store/hibernate.log
 eu.etaxonomy.taxeditor.store/target
index d4c616a67dcc0f4318f0bf772f4204e3eebe6d7d..c0a1e5305a51085dc4c3b011580435e32ee755ba 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Application
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.application;singleton:=true
-Bundle-Version: 3.3.8.qualifier
+Bundle-Version: 3.4.0.qualifier
 Bundle-Activator: eu.etaxonomy.taxeditor.TaxonomicEditorPlugin
 Bundle-Vendor: EDIT
 Bundle-Localization: OSGI-INF/l10n/plugin
index 20e1dfcca44cd067df817318071270dc06a4858d..eade0b2f589707db8585fb8e4915d315235c0840 100644 (file)
@@ -4,7 +4,7 @@
   <parent>
     <groupId>eu.etaxonomy</groupId>
     <artifactId>taxeditor-parent</artifactId>
-    <version>3.3.8-SNAPSHOT</version>
+    <version>3.4.0-SNAPSHOT</version>
   </parent>
 
   <modelVersion>4.0.0</modelVersion>
index 46562b2ce1c2e895a8ebcbdbe6dde4b775112bf5..8baea95b92bab2b281a65f9e050699c8a0fa8fed 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Bulkeditor Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.bulkeditor;singleton:=true
-Bundle-Version: 3.3.8.qualifier
+Bundle-Version: 3.4.0.qualifier
 Bundle-Activator: eu.etaxonomy.taxeditor.bulkeditor.internal.TaxeditorBulkeditorPlugin
 Bundle-Vendor: EDIT
 Export-Package: eu.etaxonomy.taxeditor.annotatedlineeditor,
index 7d069767e433d913a04255aa971e2cb8ef3f84ea..4da979c0167b55bc9c1a085b492f3b0b26bd3c84 100644 (file)
             id="taxeditor-bulkeditor.command.setMarkerFlag"\r
             name="Set Marker Flag">\r
       </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.bulkeditor.derivedunit.handler.AddDerivedUnitMediaHandler"\r
-            id="eu.etaxonomy.taxeditor.bulkeditor.command.derivedunit.addDerivedUnitMedia"\r
-            name="Add Derived Unit Media">\r
-      </command>\r
-      <command\r
-            defaultHandler="eu.etaxonomy.taxeditor.bulkeditor.derivedunit.handler.AddFieldObjectMediaHandler"\r
-            id="eu.etaxonomy.taxeditor.bulkeditor.command.derivedunit.addFieldObjectMedia"\r
-            name="Add Field Object Media">\r
-      </command>\r
       <!--command\r
             defaultHandler="eu.etaxonomy.taxeditor.bulkeditor.handler.NewEntityHandler"\r
             id="eu.etaxonomy.taxeditor.bulkeditor.command.new"\r
index adaebb3e7a0461837642faebeb7cfaffc71a9f12..f3242396cf6859591351e57e55b93bd46d8f1519 100644 (file)
@@ -4,7 +4,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>3.3.8-SNAPSHOT</version>
+               <version>3.4.0-SNAPSHOT</version>
        </parent>
 
        <modelVersion>4.0.0</modelVersion>
index 15fa5be38f8768556325778e282a93c04e3c563f..dc6052e58354e72374afe2c06509a278c4609b13 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Editor Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.editor;singleton:=true
-Bundle-Version: 3.3.8.qualifier
+Bundle-Version: 3.4.0.qualifier
 Bundle-Activator: eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin
 Bundle-Vendor: %Bundle-Vendor.0
 Bundle-Localization: OSGI-INF/l10n/plugin
index 7f039453439c0511918de252ff0d9b96bccd3078..90254eae65b947e6dc43b11b8ee6cf88f9afc98e 100644 (file)
                commandId="taxeditor-editor.useExistingImage"
                label="%command.label.50"
                style="push">
-            <visibleWhen
-                  checkEnabled="false">
+            <visibleWhen>
                <reference
                      definitionId="isImageGallery">
                </reference>
                    <equals
                          value="eu.etaxonomy.taxeditor.editor.view.media">
                    </equals>
-                   <equals
-                         value="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView">
-                   </equals>
                 </or>
              </with>
           </activeWhen>
             class="eu.etaxonomy.taxeditor.editor.handler.OpenChecklistEditorHandler"
             commandId="eu.etaxonomy.taxeditor.editor.handler.OpenChecklistEditorHandler">
       </handler>
-      <handler
+            <handler
             class="eu.etaxonomy.taxeditor.editor.handler.LoadPherogramHandler"
             commandId="eu.etaxonomy.taxeditor.editor.molecular.AlignmentEditor.loadPherogram">
          <activeWhen>
             </with>
          </activeWhen>
       </handler>
+      <handler
+            class="eu.etaxonomy.taxeditor.editor.view.derivate.handler.DeleteDerivateHandler"
+            commandId="org.eclipse.ui.edit.delete">
+         <activeWhen>
+            <with
+                  variable="activePartId">
+               <equals
+                     value="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView">
+               </equals>
+            </with>
+         </activeWhen>
+      </handler>
    </extension>
    <extension
          name="%extension.name"
index 1c6e3e8c5e0945045713ef8b7d3562dd4d50760e..da6a8af2debc17899cd751175c23fe4640af33b8 100644 (file)
@@ -4,7 +4,7 @@
   <parent>
        <groupId>eu.etaxonomy</groupId>
        <artifactId>taxeditor-parent</artifactId>
-    <version>3.3.8-SNAPSHOT</version>
+    <version>3.4.0-SNAPSHOT</version>
   </parent>
   
   <modelVersion>4.0.0</modelVersion>
index ce1c9384d814bba961ad68dc1b5adecbc2f24366..ab3c65165c05a0f9c6ba9c2229459122593c5fa9 100644 (file)
@@ -98,17 +98,17 @@ public class AlignmentEditor extends EditorPart {
 //                     result.getDataAreas().getSequenceAreas(sequenceProvider.sequenceIDByName("Sequence 4")).add(pherogramArea);
 
                        PherogramProvider pherogramProvider = new BioJavaPherogramProvider(ChromatogramFactory.create(
-                                   new File("D:\\Users\\BenStoever\\Documents\\Studium\\Projekte\\Promotion\\EDITor\\Quelltexte\\LibrAlign branch\\Repository\\eu.etaxonomy.taxeditor.editor\\src\\main\\resources\\AlignmentTestData\\JR430_JR-P01.ab1")));
-                       PherogramArea pherogramArea = new PherogramArea(result.getContentArea(), pherogramProvider);
-                       pherogramArea.setFirstSeqPos(1);
-                       pherogramArea.setLeftCutPosition(13);
-                       pherogramArea.setRightCutPosition(697);
-                       pherogramArea.getAlignmentModel().setShiftChange(14, 1);
-                       pherogramArea.getAlignmentModel().setShiftChange(35, 1);
-                       result.getContentArea().getDataAreas().getSequenceAreas(sequenceProvider.sequenceIDByName("Read 1")).add(pherogramArea);
-
-                       pherogramProvider = new ReverseComplementPherogramProvider(new BioJavaPherogramProvider(ChromatogramFactory.create(
-                               new File("D:\\Users\\BenStoever\\Documents\\Studium\\Projekte\\Promotion\\EDITor\\Quelltexte\\LibrAlign branch\\Repository\\eu.etaxonomy.taxeditor.editor\\src\\main\\resources\\AlignmentTestData\\JR444_JR-P05.ab1"))));
+                    new File("/home/pplitzner/svn/LibrAlign/taxeditor/eu.etaxonomy.taxeditor.editor/src/main/resources/AlignmentTestData/JR430_JR-P01.ab1")));
+            PherogramArea pherogramArea = new PherogramArea(result.getContentArea(), pherogramProvider);
+            pherogramArea.setFirstSeqPos(1);
+            pherogramArea.setLeftCutPosition(13);
+            pherogramArea.setRightCutPosition(697);
+            pherogramArea.getAlignmentModel().setShiftChange(14, 1);
+            pherogramArea.getAlignmentModel().setShiftChange(35, 1);
+            result.getContentArea().getDataAreas().getSequenceAreas(sequenceProvider.sequenceIDByName("Read 1")).add(pherogramArea);
+
+            pherogramProvider = new ReverseComplementPherogramProvider(new BioJavaPherogramProvider(ChromatogramFactory.create(
+                new File("/home/pplitzner/svn/LibrAlign/taxeditor/eu.etaxonomy.taxeditor.editor/src/main/resources/AlignmentTestData/JR444_JR-P05.ab1"))));
                        pherogramArea = new PherogramArea(result.getContentArea(), pherogramProvider);
                        pherogramArea.setFirstSeqPos(1);
                        pherogramArea.setLeftCutPosition(267);
index d556221c8047671c0d13d992bea81a35e6644b08..4c2735fc52620dc6847b40af8def4416b37f497e 100644 (file)
@@ -31,6 +31,7 @@ import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifQueryServiceWrapper;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifResponse;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
 public class DataImportEditorContextMenu extends CompoundContributionItem {
@@ -47,7 +48,7 @@ public class DataImportEditorContextMenu extends CompoundContributionItem {
                     @Override
                     public void fill(Menu menu, int index) {
                         final IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-                        final IEditorPart activeEditor = window.getActivePage().getActiveEditor();
+                        final IEditorPart activeEditor = AbstractUtility.getActiveEditor();
                         final ISelection selection = window.getActivePage().getSelection();
                         if(selection instanceof StructuredSelection){
                             final StructuredSelection structuredSelection = (StructuredSelection)selection;
index 264e23b8469ebe1fa80c6903e6571dc1fed0410e..7c47c3151ea32736c41d834889839ffecac4d333 100644 (file)
@@ -69,6 +69,8 @@ public class SpecimenImportView extends DataImportView<SpecimenOrObservationBase
             TransientCdmRepository repo =
                     new TransientCdmRepository(CdmStore.getCurrentApplicationConfiguration());
             configurator.setCdmAppController(repo);
+            configurator.setAddMediaAsMediaSpecimen(true);
+            configurator.setDeterminationOnFieldUnitLevel(true);
 
             CdmDefaultImport<Abcd206ImportConfigurator> importer = new CdmDefaultImport<Abcd206ImportConfigurator>();
             importer.invoke(configurator);
index 9d915e29ad188b8063b81a1a381cabe460d9885b..ec743254295cc25407643fd674219102a1f6bfc1 100644 (file)
@@ -31,6 +31,7 @@ import eu.etaxonomy.cdm.api.service.DeleteResult;
 import eu.etaxonomy.cdm.api.service.IOccurrenceService;
 import eu.etaxonomy.cdm.api.service.config.DeleteConfiguratorBase;
 import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
+import eu.etaxonomy.cdm.api.service.dto.DerivateHierarchyDTO;
 import eu.etaxonomy.cdm.api.service.pager.Pager;
 import eu.etaxonomy.cdm.api.service.search.SearchResult;
 import eu.etaxonomy.cdm.api.service.util.TaxonRelationshipEdge;
@@ -915,6 +916,24 @@ public class TransientOccurenceService implements IOccurrenceService {
                return defaultService.findWithoutFlush(uuid);
        }
 
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.cdm.api.service.IOccurrenceService#listFieldUnitsByAssociatedTaxon(java.util.Set, eu.etaxonomy.cdm.model.taxon.Taxon, java.lang.Integer, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
+     */
+    @Override
+    public Collection<FieldUnit> listFieldUnitsByAssociatedTaxon(Set<TaxonRelationshipEdge> includeRelationships,
+            Taxon associatedTaxon, Integer maxDepth, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints,
+            List<String> propertyPaths) {
+        return defaultService.listFieldUnitsByAssociatedTaxon(includeRelationships, associatedTaxon, maxDepth, pageSize, pageNumber, orderHints, propertyPaths);
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.cdm.api.service.IOccurrenceService#assembleDerivateHierarchyDTO(eu.etaxonomy.cdm.model.occurrence.FieldUnit, java.util.UUID)
+     */
+    @Override
+    public DerivateHierarchyDTO assembleDerivateHierarchyDTO(FieldUnit fieldUnit, UUID associatedTaxonUuid) {
+        return defaultService.assembleDerivateHierarchyDTO(fieldUnit, associatedTaxonUuid);
+    }
+
     /* (non-Javadoc)
      * @see eu.etaxonomy.cdm.api.service.IOccurrenceService#getNonCascadedAssociatedElements(eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase, eu.etaxonomy.cdm.api.conversation.ConversationHolder)
      */
@@ -923,4 +942,12 @@ public class TransientOccurenceService implements IOccurrenceService {
         return defaultService.getNonCascadedAssociatedElements(specimen);
     }
 
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.cdm.api.service.IOccurrenceService#deleteDerivateHierarchy(eu.etaxonomy.cdm.model.common.ICdmBase)
+     */
+    @Override
+    public DeleteResult deleteDerivateHierarchy(ICdmBase arg0) {
+        return defaultService.deleteDerivateHierarchy(arg0);
+    }
+
 }
index 3d27e75c8f5ae1459f5ff177f5d97b5cf044f945..263d12a243fb7f5dd281ed1cef05cb5a4cc47aca 100644 (file)
@@ -16,6 +16,7 @@ import eu.etaxonomy.cdm.model.molecular.SingleRead;
 import eu.etaxonomy.cdm.model.occurrence.DerivationEvent;
 import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
 
 public class DerivateContentProvider implements ITreeContentProvider {
@@ -56,7 +57,7 @@ public class DerivateContentProvider implements ITreeContentProvider {
             value = ((TreeNode) element).getValue();
         }
         Set<Object> children = new LinkedHashSet<Object>();
-        if(value instanceof DnaSample){
+        if(value instanceof DnaSample && ((DnaSample) value).getRecordBasis()==SpecimenOrObservationType.DnaSample){
             DnaSample dnaSample = (DnaSample)value;
             Set<Sequence> sequences = dnaSample.getSequences();
             for (Sequence sequence : sequences) {
@@ -101,7 +102,7 @@ public class DerivateContentProvider implements ITreeContentProvider {
             element = ((TreeNode) element).getValue();
         }
 
-        if(element instanceof DnaSample){
+        if(element instanceof DnaSample && ((DnaSample) element).getRecordBasis()==SpecimenOrObservationType.DnaSample){
             DnaSample dnaSample = (DnaSample)element;
             if(!dnaSample.getSequences().isEmpty()){// || !dnaSample.getAmplifications().isEmpty()){
                 return true;
index 69f175743e030568b3e904015de829284f4a00b2..6f6967c038f948167626c97871efeac87f0ddfe3 100644 (file)
@@ -21,6 +21,7 @@ import eu.etaxonomy.cdm.model.molecular.Sequence;
 import eu.etaxonomy.cdm.model.molecular.SingleRead;
 import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
 import eu.etaxonomy.taxeditor.editor.EditorUtil;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.store.CdmStore;
@@ -103,7 +104,7 @@ public class DerivateDropListener extends ViewerDropAdapter {
         TreeNode fromParentNode = draggedNode.getParent();
         Object fromParentSpecimen = null;
         if(fromParentNode!=null){
-            fromParentNode.getValue();
+            fromParentSpecimen = fromParentNode.getValue();
         }
 
         // drag'n'drop for SpecimenOrObservationBase
@@ -112,8 +113,9 @@ public class DerivateDropListener extends ViewerDropAdapter {
             DerivedUnit draggedSpecimen = (DerivedUnit) draggedNodeValue;
             SpecimenOrObservationBase<?> targetSpecimen = (SpecimenOrObservationBase<?>) targetNodeValue;
             //check if type is a sub derivate type
-            if(!fromParentNode.equals(targetNode)//don't drag on direct parent node
-                    && fromParentSpecimen instanceof SpecimenOrObservationBase<?>){
+            if(fromParentSpecimen instanceof SpecimenOrObservationBase<?>
+            && fromParentNode!=null
+            && !fromParentNode.equals(targetNode)){//don't drag on direct parent node)
                 return occurrenceService.moveDerivate((SpecimenOrObservationBase<?>)fromParentSpecimen, targetSpecimen, draggedSpecimen);
             }
         }
@@ -127,7 +129,7 @@ public class DerivateDropListener extends ViewerDropAdapter {
         }
 
         // drag'n'drop for Sequence
-        else if(draggedNodeValue instanceof Sequence && targetNodeValue instanceof DnaSample ){
+        else if(draggedNodeValue instanceof Sequence && targetNodeValue instanceof DnaSample && ((SpecimenOrObservationBase<?>) targetNodeValue).getRecordBasis()==SpecimenOrObservationType.DnaSample){
             Sequence sequence = (Sequence)draggedNodeValue;
             if(fromParentSpecimen instanceof DnaSample){
                 return occurrenceService.moveSequence((DnaSample)fromParentSpecimen, (DnaSample)targetNodeValue, sequence);
index ad5c4f329930de15aadd744f362cdff36b6be940..a971784de2b3d74d020967abaf6011d9ce70a2de 100644 (file)
@@ -14,6 +14,7 @@ import org.eclipse.jface.viewers.ISelectionChangedListener;
 import org.eclipse.jface.viewers.SelectionChangedEvent;
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.jface.viewers.TreeNode;
+import org.eclipse.jface.viewers.TreeSelection;
 import org.eclipse.jface.viewers.TreeViewer;
 import org.eclipse.swt.SWT;
 import org.eclipse.swt.dnd.DND;
@@ -25,7 +26,6 @@ import org.eclipse.swt.widgets.Tree;
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.IEditorPart;
 import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IMemento;
 import org.eclipse.ui.PartInitException;
 import org.eclipse.ui.part.EditorPart;
 
@@ -36,7 +36,6 @@ import eu.etaxonomy.cdm.model.molecular.Sequence;
 import eu.etaxonomy.cdm.model.molecular.SingleRead;
 import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
-import eu.etaxonomy.taxeditor.model.IContextListener;
 import eu.etaxonomy.taxeditor.model.IDirtyMarkable;
 import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
 import eu.etaxonomy.taxeditor.model.IPartContentHasFactualData;
@@ -51,7 +50,7 @@ import eu.etaxonomy.taxeditor.view.derivateSearch.DerivateLabelProvider;
  */
 public class DerivateView extends EditorPart implements IPartContentHasFactualData, IDirtyMarkable,
         IConversationEnabled, IPartContentHasDetails, IPartContentHasMedia, IPartContentHasSupplementalData,
-        IContextListener, ISelectionChangedListener {
+        ISelectionChangedListener {
 
        /**
      * Key used for storing a single DerivateView in a memento
@@ -83,7 +82,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
      * Default constructor
      */
     public DerivateView() {
-        CdmStore.getContextManager().addContextListener(this);
     }
 
     /* (non-Javadoc)
@@ -251,6 +249,19 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         changed(null);
     }
 
+    /**
+     * Refreshes the derivate hierarchy tree and expands the tree
+     * to show and select the given object.
+     *
+     * @param expandTo the object to which the tree should be expanded
+     */
+    public void refreshTree(Object expandTo){
+        refreshTree();
+        TreeSelection selection = (TreeSelection) viewer.getSelection();
+        viewer.expandToLevel(selection.getFirstElement(), 1);
+        viewer.setSelection(new StructuredSelection(new TreeNode(expandTo)));
+    }
+
     /**
      * Refreshes the derivate hierarchy tree
      */
@@ -260,6 +271,7 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         viewer.refresh();
     }
 
+
     private void generateMultiLinkSingleReads() {
         Set<SingleRead> multiLinkSingleReads = new HashSet<SingleRead>();
         for(Entry<SingleRead, Collection<Sequence>> entry:CdmStore.getService(ISequenceService.class).getSingleReadSequencesMap().entrySet()){
@@ -277,64 +289,6 @@ public class DerivateView extends EditorPart implements IPartContentHasFactualDa
         return this.multiLinkSingleReads;
     }
 
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IContextListener#contextAboutToStop(org.eclipse.ui.IMemento, org.eclipse.core.runtime.IProgressMonitor)
-     */
-    @Override
-    public void contextAboutToStop(IMemento memento, IProgressMonitor monitor) {
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IContextListener#contextStop(org.eclipse.ui.IMemento, org.eclipse.core.runtime.IProgressMonitor)
-     */
-    @Override
-    public void contextStop(IMemento memento, IProgressMonitor monitor) {
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IContextListener#contextStart(org.eclipse.ui.IMemento, org.eclipse.core.runtime.IProgressMonitor)
-     */
-    @Override
-    public void contextStart(IMemento memento, IProgressMonitor monitor) {
-//        if(memento == null){
-//            return;
-//        }
-//        IMemento editorMementos = memento.getChild(DERIVATE_VIEW_MEMENTO_KEY);
-//            DerivateViewEditorInput input = new DerivateViewEditorInput(UUID.fromString(editorInput.getString(DerivateViewEditorInput.UUID_MEMENTO_KEY)));
-//                try {
-//                    EditorUtil.open(input);
-//                } catch (PartInitException e) {
-//                    AbstractUtility.error(getClass(), "Error opening an editor window", e);
-//                }
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IContextListener#contextRefresh(org.eclipse.core.runtime.IProgressMonitor)
-     */
-    @Override
-    public void contextRefresh(IProgressMonitor monitor) {
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IContextListener#workbenchShutdown(org.eclipse.ui.IMemento, org.eclipse.core.runtime.IProgressMonitor)
-     */
-    @Override
-    public void workbenchShutdown(IMemento memento, IProgressMonitor monitor) {
-//        if (!conversation.isBound()) {
-//            conversation.bind();
-//        }
-//        conversation.close();
-//        if(memento == null){
-//            return;
-//        }
-//
-//        IEditorInput input = getEditorInput();
-//        if(input instanceof IPersistable){
-//            memento.createChild(DERIVATE_VIEW_MEMENTO_KEY);
-//            ((IPersistable) input).saveState(memento);
-//        }
-    }
-
     /* (non-Javadoc)
      * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent)
      */
index b956e86c779337c9dc9e6335f021c44b07749fe0..9c65824d4ca8af488788ae8978e07b318adefd25 100644 (file)
@@ -57,24 +57,26 @@ public class CreateDerivateContextMenu extends CompoundContributionItem {
                             if(selectedTreeNode.getValue() instanceof FieldUnit){
                                 createMenuItem(addMenu, "Specimen", selectedTreeNode, DerivedUnit.class, SpecimenOrObservationType.PreservedSpecimen);
                                 new MenuItem(addMenu, SWT.SEPARATOR);
-                                createMenuItem(addMenu, "Tissue Sample", selectedTreeNode, DerivedUnit.class, SpecimenOrObservationType.TissueSample);
+                                createMenuItem(addMenu, "Tissue Sample", selectedTreeNode, DnaSample.class, SpecimenOrObservationType.TissueSample);
                                 createMenuItem(addMenu, "DNA Sample", selectedTreeNode, DnaSample.class, SpecimenOrObservationType.DnaSample);
                                 createMenuItem(addMenu, "Media Specimen", selectedTreeNode, MediaSpecimen.class, SpecimenOrObservationType.Media);
                             }
                             //context menu for Specimen
                             else if(selectedTreeNode.getValue() instanceof DerivedUnit && ((DerivedUnit)selectedTreeNode.getValue()).getRecordBasis()==SpecimenOrObservationType.PreservedSpecimen){
 
-                                createMenuItem(addMenu, "Tissue Sample", selectedTreeNode, DerivedUnit.class, SpecimenOrObservationType.TissueSample);
+                                createMenuItem(addMenu, "Tissue Sample", selectedTreeNode, DnaSample.class, SpecimenOrObservationType.TissueSample);
                                 createMenuItem(addMenu, "DNA Sample", selectedTreeNode, DnaSample.class, SpecimenOrObservationType.DnaSample);
                                 createMenuItem(addMenu, "Media Specimen", selectedTreeNode, MediaSpecimen.class, SpecimenOrObservationType.Media);
                             }
                             //context menu for TissueSample
-                            else if(selectedTreeNode.getValue() instanceof DerivedUnit && ((DerivedUnit)selectedTreeNode.getValue()).getRecordBasis()==SpecimenOrObservationType.TissueSample){
+                            else if(selectedTreeNode.getValue() instanceof DnaSample && ((DnaSample)selectedTreeNode.getValue()).getRecordBasis()==SpecimenOrObservationType.TissueSample){
                                createMenuItem(addMenu, "DnaSample", selectedTreeNode, DnaSample.class, null);
+                               createMenuItem(addMenu, "Media Specimen", selectedTreeNode, MediaSpecimen.class, SpecimenOrObservationType.Media);
                             }
                             //context menu for DnaSample
-                            else if(selectedTreeNode.getValue() instanceof DnaSample){
+                            else if(selectedTreeNode.getValue() instanceof DnaSample && ((DnaSample)selectedTreeNode.getValue()).getRecordBasis()==SpecimenOrObservationType.DnaSample){
                                 createMenuItem(addMenu, "Consensus Sequence", selectedTreeNode, Sequence.class, null);
+                                createMenuItem(addMenu, "Media Specimen", selectedTreeNode, MediaSpecimen.class, SpecimenOrObservationType.Media);
                             }
                             //context menu for Sequence
                             else if(selectedTreeNode.getValue() instanceof Sequence){
@@ -123,21 +125,32 @@ public class CreateDerivateContextMenu extends CompoundContributionItem {
          */
         @Override
         public void widgetSelected(SelectionEvent e) {
+            Object createdElement = null;
             Object selectedDerivate = selectedNode.getValue();
-            if(selectedDerivate instanceof DnaSample){
+            if(selectedDerivate instanceof DnaSample && ((DnaSample) selectedDerivate).getRecordBasis()==SpecimenOrObservationType.DnaSample){
                 DnaSample dnaSample = (DnaSample)selectedDerivate;
                 if(childClass.equals(Sequence.class)){
-                    dnaSample.addSequence(Sequence.NewInstance(""));//why does this not have DnaSample as constructor parameter?
+                    Sequence newInstance = Sequence.NewInstance("");
+                    dnaSample.addSequence(newInstance);//why does this not have DnaSample as constructor parameter?
+                    createdElement = newInstance;
                 }
             }
             else if(selectedDerivate instanceof Sequence){
-                ((Sequence) selectedDerivate).addSingleRead(SingleRead.NewInstance());
+                SingleRead newInstance = SingleRead.NewInstance();
+                ((Sequence) selectedDerivate).addSingleRead(newInstance);
+                createdElement = newInstance;
             }
             else if(selectedDerivate instanceof SpecimenOrObservationBase && DerivedUnit.class.isAssignableFrom(childClass)){
                 SpecimenOrObservationBase<?> specimenOrObservationBase = (SpecimenOrObservationBase<?>)selectedDerivate;
                 DerivedUnit derivedUnit;
                 if(childClass.equals(DnaSample.class)){
                     derivedUnit = DnaSample.NewInstance();
+                    if(specimenType==SpecimenOrObservationType.DnaSample){
+                        derivedUnit.setRecordBasis(SpecimenOrObservationType.DnaSample);
+                    }
+                    else if(specimenType==SpecimenOrObservationType.TissueSample){
+                        derivedUnit.setRecordBasis(SpecimenOrObservationType.TissueSample);
+                    }
                 }
                 else if(childClass.equals(MediaSpecimen.class)){
                     derivedUnit = MediaSpecimen.NewInstance(specimenType);
@@ -150,6 +163,7 @@ public class CreateDerivateContextMenu extends CompoundContributionItem {
                 specimenOrObservationBase.addDerivationEvent(DerivationEvent.NewSimpleInstance(specimenOrObservationBase, derivedUnit, DerivationEventType.GATHERING_IN_SITU()));
                 derivedUnit.setCacheStrategy(new DerivedUnitFacadeCacheStrategy());
                 derivedUnit.getTitleCache(); //update title cache
+                createdElement = derivedUnit;
             }
 
             //refresh view
@@ -157,7 +171,7 @@ public class CreateDerivateContextMenu extends CompoundContributionItem {
             if(activePart instanceof DerivateView){
                 DerivateView derivateView = (DerivateView)activePart;
                 derivateView.changed(null);
-                derivateView.refreshTree();
+                derivateView.refreshTree(createdElement);
             }
         }
     }
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/handler/DeleteDerivateHandler.java
new file mode 100644 (file)
index 0000000..1542fb2
--- /dev/null
@@ -0,0 +1,78 @@
+// $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.
+ */
+
+package eu.etaxonomy.taxeditor.editor.view.derivate.handler;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.commands.common.NotDefinedException;
+import org.eclipse.core.commands.operations.IUndoContext;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.TreeNode;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.handlers.HandlerUtil;
+
+import eu.etaxonomy.cdm.model.common.CdmBase;
+import eu.etaxonomy.cdm.model.molecular.Sequence;
+import eu.etaxonomy.cdm.model.molecular.SingleRead;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+import eu.etaxonomy.taxeditor.editor.EditorUtil;
+import eu.etaxonomy.taxeditor.editor.view.derivate.operation.DeleteDerivateOperation;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
+import eu.etaxonomy.taxeditor.model.MessagingUtils;
+import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
+
+/**
+ *
+ * @author pplitzner
+ * @date Oct 21, 2014
+ *
+ */
+public class DeleteDerivateHandler extends AbstractHandler {
+
+    /* (non-Javadoc)
+     * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+     */
+    /** {@inheritDoc} */
+    @Override
+    public Object execute(ExecutionEvent event) throws ExecutionException {
+        IStructuredSelection selection = (IStructuredSelection) HandlerUtil.getActiveSite(event).getSelectionProvider().getSelection();
+
+        IWorkbenchPart part = HandlerUtil.getActivePart(event);
+        IPostOperationEnabled postOperationEnabled = (part instanceof IPostOperationEnabled) ? (IPostOperationEnabled) part : null;
+
+        try {
+            String label = event.getCommand().getName();
+
+            IUndoContext undoContext = EditorUtil.getUndoContext();
+
+            if(selection.size()>0){
+                Object object = selection.iterator().next();
+
+                if(object instanceof TreeNode){
+                    TreeNode treeNode = (TreeNode)object;
+                    Object value = ((TreeNode) object).getValue();
+                    if(value instanceof SpecimenOrObservationBase<?> || value instanceof Sequence || value instanceof SingleRead){
+                        DeleteDerivateOperation deleteDerivateOperation = new DeleteDerivateOperation(label, undoContext, (CdmBase) object, postOperationEnabled);
+                        AbstractUtility.executeOperation(deleteDerivateOperation);
+                    }
+                }
+                else{
+                    MessagingUtils.error(getClass(), "Selection is not valid for this delete handler", null);
+                }
+            }
+
+        } catch (NotDefinedException e) {
+            MessagingUtils.warn(getClass(), "Command name not set.");
+        }
+        return null;
+    }
+}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/operation/DeleteDerivateOperation.java
new file mode 100644 (file)
index 0000000..9ef9450
--- /dev/null
@@ -0,0 +1,73 @@
+/**
+ * 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.view.derivate.operation;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.commands.operations.IUndoContext;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+
+import eu.etaxonomy.cdm.model.common.CdmBase;
+import eu.etaxonomy.taxeditor.operation.AbstractPostOperation;
+import eu.etaxonomy.taxeditor.operation.IPostOperationEnabled;
+
+/**
+ *
+ * @author pplitzner
+ * @date Oct 21, 2014
+ *
+ */
+public class DeleteDerivateOperation extends AbstractPostOperation<CdmBase> {
+
+    public DeleteDerivateOperation(String label, IUndoContext undoContext, CdmBase element,
+            IPostOperationEnabled postOperationEnabled) {
+        super(label, undoContext, element, postOperationEnabled);
+    }
+
+    /*
+     * (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 {
+        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 execute(monitor, info);
+    }
+
+    /*
+     * (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 postExecute(element);
+    }
+}
diff --git a/eu.etaxonomy.taxeditor.feature.platform/LICENSE.TXT b/eu.etaxonomy.taxeditor.feature.platform/LICENSE.TXT
new file mode 100644 (file)
index 0000000..e56def0
--- /dev/null
@@ -0,0 +1,4 @@
+The contents of this feature are subject to the Eclipse Public License Version 1.0 (the &quot;License&quot;); you may not use this file except in compliance with the License. You may obtain a copy of the License at
+http://www.eclipse.org/legal/epl-v10.html
+
+Software distributed under the License is distributed on an &quot;AS IS&quot; basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
\ No newline at end of file
index 21e0de374261e6dca5b2368943d8c95d95e2cccd..79596d803cae8b712484510a082650a04108ede2 100644 (file)
@@ -2,18 +2,11 @@
 <feature
       id="eu.etaxonomy.taxeditor.feature.platform"
       label="Taxeditor Dependencies"
-      version="3.3.8.qualifier"
+      version="3.4.0.qualifier"
       os="linux,macosx,win32"
       ws="cocoa,gtk,win32"
       arch="x86,x86_64">
 
-   <!--license url="http://www.eclipse.org/legal/epl-v10.html">
-      The contents of this file are subject to the Eclipse Public License Version 1.0 (the &quot;License&quot;); you may not use this file except in compliance with the License. You may obtain a copy of the License at
-http://www.eclipse.org/legal/epl-v10.html
-
-Software distributed under the License is distributed on an &quot;AS IS&quot; basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
-   </license-->
-
    <url>
       <update label="EDIT Taxonomic Editor" url="http://wp5.e-taxonomy.eu/taxeditor/update"/>
    </url>
index 61024e776b5de89afd893b7a695745dfb3255c7a..d7e0536d4226d8700b8ea8a7babc4c1ddbbd0039 100644 (file)
@@ -3,7 +3,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>3.3.8-SNAPSHOT</version>
+               <version>3.4.0-SNAPSHOT</version>
        </parent>
        <modelVersion>4.0.0</modelVersion>
        <artifactId>eu.etaxonomy.taxeditor.feature.platform</artifactId>
diff --git a/eu.etaxonomy.taxeditor.feature/LICENSE.TXT b/eu.etaxonomy.taxeditor.feature/LICENSE.TXT
new file mode 100644 (file)
index 0000000..e56def0
--- /dev/null
@@ -0,0 +1,4 @@
+The contents of this feature are subject to the Eclipse Public License Version 1.0 (the &quot;License&quot;); you may not use this file except in compliance with the License. You may obtain a copy of the License at
+http://www.eclipse.org/legal/epl-v10.html
+
+Software distributed under the License is distributed on an &quot;AS IS&quot; basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
\ No newline at end of file
index e16cb13673bd132098479969c5a3aaa917593e30..df501596241cb7adca55d5d4fa705bdef4692091 100644 (file)
@@ -2,7 +2,7 @@
 <feature
       id="eu.etaxonomy.taxeditor.feature"
       label="Taxonomic Editor"
-      version="3.3.8.qualifier"
+      version="3.4.0.qualifier"
       provider-name="EDIT"
       plugin="eu.etaxonomy.taxeditor.application"
       os="linux,macosx,win32"
       [Enter Copyright Description here.]
    </copyright>
 
-   <!--license url="http://www.mozilla.org/MPL/">
-      The contents of this file are subject to the Mozilla Public License Version 1.1 (the &quot;License&quot;); you may not use this file except in compliance with the License. You may obtain a copy of the License at
-http://www.mozilla.org/MPL/
-
-Software distributed under the License is distributed on an &quot;AS IS&quot; basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
-   </license-->
-
    <url>
       <update label="EDIT Taxonomic Editor" url="http://cybertaxonomy.eu/download/taxeditor/update/"/>
    </url>
index 5633fac66b7d60787e4779d07a21aac986a44ff0..d553aec651a999eb45752257d101155d75466219 100644 (file)
@@ -3,7 +3,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>3.3.8-SNAPSHOT</version>
+               <version>3.4.0-SNAPSHOT</version>
        </parent>
        <modelVersion>4.0.0</modelVersion>
        <artifactId>eu.etaxonomy.taxeditor.feature</artifactId>
index 543e164e2bfbdc01ca2b27d0bc6cdee4063b0d1c..9af1f6d9c2abec616084ccf4c992c33de9bfcc19 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Help
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.help; singleton:=true
-Bundle-Version: 3.3.8.qualifier
+Bundle-Version: 3.4.0.qualifier
 Bundle-Activator: eu.etaxonomy.taxeditor.help.Activator
 Bundle-Vendor: EDIT
 Require-Bundle: org.eclipse.ui,
index 8fa6ae67c98550ac1471f2d804fd90ae844ed08b..be078cd807b17934d07a6c351953d59202178476 100644 (file)
@@ -4,7 +4,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>3.3.8-SNAPSHOT</version>
+               <version>3.4.0-SNAPSHOT</version>
        </parent>
 
        <modelVersion>4.0.0</modelVersion>
index 87cf5d4596b9e0294d9fee96eab4a56b1aad733f..0c596eaf6ed7f8c0009e30663ecf54ac6041d3b9 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Navigation Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.navigation;singleton:=true
-Bundle-Version: 3.3.8.qualifier
+Bundle-Version: 3.4.0.qualifier
 Bundle-Vendor: EDIT
 Export-Package: eu.etaxonomy.cdm,
  eu.etaxonomy.taxeditor.navigation,
index 3ff2a55770b900f0e28aa40378d3d4d574488a43..67c35d572774424ab4cbbbe485c8dd12ccaee1af 100644 (file)
@@ -4,7 +4,7 @@
        <parent>
                <groupId>eu.etaxonomy</groupId>
                <artifactId>taxeditor-parent</artifactId>
-               <version>3.3.8-SNAPSHOT</version>
+               <version>3.4.0-SNAPSHOT</version>
        </parent>
 
        <modelVersion>4.0.0</modelVersion>
index 99e8e0c56b64293f199b2a1da07d258434f8c337..2b4b2ade6f166a2da787877be7bc7ccb268e6b41 100644 (file)
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: Printpublisher Bundle
 Bundle-SymbolicName: eu.etaxonomy.taxeditor.printpublisher;singleton:=true
-Bundle-Version: 3.3.8.qualifier
+Bundle-Version: 3.4.0.qualifier
 Require-Bundle: org.eclipse.osgi,
  org.eclipse.ui,
  eu.etaxonomy.taxeditor.cdmlib,
index a200a1a507910be7aae177184f2377bc33fd3ed5..6aaf4e7fcdb68fbe6d895282a06f041d6543e7b0 100644 (file)
@@ -4,7 +4,7 @@
        <parent>
                <artifactId>taxeditor-parent</artifactId>
                <groupId>eu.etaxonomy</groupId>
-               <version>3.3.8-SNAPSHOT</version>
+               <version>3.4.0-SNAPSHOT</version>
        </parent>
 
        <modelVersion>4.0.0</modelVersion>
diff --git a/eu.etaxonomy.taxeditor.remoting/.classpath b/eu.etaxonomy.taxeditor.remoting/.classpath
deleted file mode 100644 (file)
index b26afa6..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-       <classpathentry including="**/*.java" kind="src" path="src/main/java"/>
-       <classpathentry excluding="**/*.java" kind="src" path="src/main/resources"/>
-       <classpathentry including="**/*.java" kind="src" output="target/test-classes" path="src/test/java"/>
-       <classpathentry excluding="**/*.java" kind="src" output="target/test-classes" path="src/test/resources"/>
-       <classpathentry exported="true" kind="lib" path="lib/dbunit-2.4.9.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-3.3.8-SNAPSHOT.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"/>
-       <classpathentry exported="true" kind="lib" path="lib/org.springframework.beans-3.2.2.RELEASE.jar"/>
-       <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"/>
-       <classpathentry exported="true" kind="lib" path="lib/org.springframework.orm-3.2.2.RELEASE.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/org.springframework.transaction-3.2.2.RELEASE.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/org.springframework.web-3.2.2.RELEASE.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/org.springframework.context-3.2.2.RELEASE.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/hibernate-commons-annotations-4.0.1.Final.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/hibernate-core-4.1.10.Final.jar" sourcepath="/home/cmathew/Temp/hibernate-core-4.1.10.Final-sources.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/hibernate-search-engine-4.2.0.Final.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/hibernate-jpa-2.0-api-1.0.1.Final.jar"/>
-       <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 exported="true" kind="lib" path="lib/aspectjrt-1.7.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/c3p0-0.9.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-3.3.8-SNAPSHOT.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-3.3.8-SNAPSHOT.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-3.3.8-SNAPSHOT.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-3.3.8-SNAPSHOT.jar" sourcepath="/home/cmathew/.m2/repository/eu/etaxonomy/cdmlib-services/3.3.8-SNAPSHOT/cdmlib-services-3.3.8-SNAPSHOT-sources.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/ehcache-core-2.4.3.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/hamcrest-core-1.3.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jboss-logging-3.1.3.GA.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/jdom-1.1.3.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/junit-4.11.jar" sourcepath="/home/cmathew/Downloads/junit-4.11-sources.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/log4j-1.2.17.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/spring-security-config-3.1.3.RELEASE.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/spring-security-core-3.1.3.RELEASE.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/spring-security-remoting-3.1.3.RELEASE.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-core-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/commons-logging-1.1.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/commons-lang-2.6.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/aopalliance-1.0.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/joda-time-2.1.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lsid-client-1.1.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lucene-core-3.6.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/lsid-server-1.1.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/slf4j-api-1.7.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/javassist-3.17.1-GA.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-spring-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-database-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/commons-dbcp-1.4.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/commons-pool-1.5.4.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-dbmaintainer-3.4.2.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/h2-1.4.181.jar"/>
-       <classpathentry exported="true" kind="lib" path="lib/unitils-dbunit-3.4.2.jar"/>
-       <classpathentry kind="output" path="target/classes"/>
-</classpath>
diff --git a/eu.etaxonomy.taxeditor.remoting/.project b/eu.etaxonomy.taxeditor.remoting/.project
deleted file mode 100644 (file)
index a73967e..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-       <name>eu.etaxonomy.taxeditor.remoting</name>
-       <comment>Holds all UI tests for the Taxonomic Editor. NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
-       <projects>
-       </projects>
-       <buildSpec>
-               <buildCommand>
-                       <name>org.eclipse.jdt.core.javabuilder</name>
-                       <arguments>
-                       </arguments>
-               </buildCommand>
-               <buildCommand>
-                       <name>org.eclipse.pde.ManifestBuilder</name>
-                       <arguments>
-                       </arguments>
-               </buildCommand>
-               <buildCommand>
-                       <name>org.eclipse.pde.SchemaBuilder</name>
-                       <arguments>
-                       </arguments>
-               </buildCommand>
-       </buildSpec>
-       <natures>
-               <nature>org.eclipse.jdt.core.javanature</nature>
-               <nature>org.eclipse.pde.PluginNature</nature>
-       </natures>
-</projectDescription>
diff --git a/eu.etaxonomy.taxeditor.remoting/.settings/org.eclipse.jdt.core.prefs b/eu.etaxonomy.taxeditor.remoting/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644 (file)
index c537b63..0000000
+++ /dev/null
@@ -1,7 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
diff --git a/eu.etaxonomy.taxeditor.remoting/.settings/org.eclipse.pde.core.prefs b/eu.etaxonomy.taxeditor.remoting/.settings/org.eclipse.pde.core.prefs
deleted file mode 100644 (file)
index f29e940..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-eclipse.preferences.version=1
-pluginProject.extensions=false
-resolve.requirebundle=false
diff --git a/eu.etaxonomy.taxeditor.remoting/META-INF/MANIFEST.MF b/eu.etaxonomy.taxeditor.remoting/META-INF/MANIFEST.MF
deleted file mode 100644 (file)
index 05c0c2d..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: UI Test Bundle
-Bundle-SymbolicName: eu.etaxonomy.taxeditor.remoting;singleton:=true
-Bundle-Version: 3.3.8.qualifier
-Bundle-Activator: eu.etaxonomy.taxeditor.remoting.RemotingTestPluginActivator
-Bundle-Vendor: EDIT
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-ActivationPolicy: lazy
-Export-Package: eu.etaxonomy.cdm.api.application,
- eu.etaxonomy.cdm.remote,
- eu.etaxonomy.taxeditor.httpinvoker,
- org.hibernate.collection.internal,
- org.hibernate.proxy
-Bundle-ClassPath: lib/aspectjrt-1.7.1.jar,
- lib/c3p0-0.9.2.jar,
- lib/cdmlib-commons-3.3.8-SNAPSHOT.jar,
- lib/cdmlib-ext-3.3.8-SNAPSHOT.jar,
- lib/cdmlib-model-3.3.8-SNAPSHOT.jar,
- lib/cdmlib-services-3.3.8-SNAPSHOT.jar,
- lib/ehcache-core-2.4.3.jar,
- lib/hamcrest-core-1.3.jar,
- lib/jboss-logging-3.1.3.GA.jar,
- lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar,
- lib/jdom-1.1.3.jar,
- lib/junit-4.11.jar,
- lib/log4j-1.2.17.jar,
- lib/spring-security-config-3.1.3.RELEASE.jar,
- lib/spring-security-core-3.1.3.RELEASE.jar,
- lib/spring-security-remoting-3.1.3.RELEASE.jar,
- lib/unitils-core-3.4.2.jar,
- lib/commons-logging-1.1.1.jar,
- lib/commons-lang-2.6.jar,
- lib/aopalliance-1.0.jar,
- lib/joda-time-2.1.jar,
- lib/lsid-client-1.1.2.jar,
- lib/lucene-core-3.6.2.jar,
- lib/lsid-server-1.1.2.jar,
- lib/slf4j-api-1.7.2.jar,
- lib/javassist-3.17.1-GA.jar,
- lib/unitils-spring-3.4.2.jar,
- lib/unitils-database-3.4.2.jar,
- lib/commons-dbcp-1.4.jar,
- lib/commons-pool-1.5.4.jar,
- lib/unitils-dbmaintainer-3.4.2.jar,
- lib/h2-1.4.181.jar,
- lib/unitils-dbunit-3.4.2.jar,
- lib/hibernate-jpa-2.0-api-1.0.1.Final.jar,
- lib/hibernate-commons-annotations-4.0.1.Final.jar,
- lib/hibernate-core-4.1.10.Final.jar,
- lib/hibernate-entitymanager-4.1.10.Final.jar,
- lib/hibernate-envers-4.1.10.Final.jar,
- lib/hibernate-search-engine-4.2.0.Final.jar,
- lib/org.springframework.context-3.2.2.RELEASE.jar,
- lib/org.springframework.aop-3.2.2.RELEASE.jar,
- lib/org.springframework.aspects-3.2.2.RELEASE.jar,
- lib/org.springframework.beans-3.2.2.RELEASE.jar,
- lib/org.springframework.core-3.2.2.RELEASE.jar,
- lib/org.springframework.expression-3.2.2.RELEASE.jar,
- lib/org.springframework.jdbc-3.2.2.RELEASE.jar,
- lib/org.springframework.orm-3.2.2.RELEASE.jar,
- lib/org.springframework.transaction-3.2.2.RELEASE.jar,
- lib/org.springframework.web-3.2.2.RELEASE.jar,
- lib/cdmlib-persistence-3.3.8-SNAPSHOT.jar,
- lib/dbunit-2.4.9.jar
-Import-Package: org.osgi.framework
-Require-Bundle: org.eclipse.osgi
-
diff --git a/eu.etaxonomy.taxeditor.remoting/build.properties b/eu.etaxonomy.taxeditor.remoting/build.properties
deleted file mode 100644 (file)
index 5385cab..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-output.. = target/classes/
-bin.includes = META-INF/,\
-               lib/aspectjrt-1.7.1.jar,\
-               lib/c3p0-0.9.2.jar,\
-               lib/cdmlib-commons-3.3.8-SNAPSHOT.jar,\
-               lib/cdmlib-ext-3.3.8-SNAPSHOT.jar,\
-               lib/cdmlib-model-3.3.8-SNAPSHOT.jar,\
-               lib/cdmlib-services-3.3.8-SNAPSHOT.jar,\
-               lib/ehcache-core-2.4.3.jar,\
-               lib/hamcrest-core-1.3.jar,\
-               lib/jboss-logging-3.1.3.GA.jar,\
-               lib/jboss-transaction-api_1.1_spec-1.0.0.Final.jar,\
-               lib/jdom-1.1.3.jar,\
-               lib/junit-4.11.jar,\
-               lib/log4j-1.2.17.jar,\
-               lib/spring-security-config-3.1.3.RELEASE.jar,\
-               lib/spring-security-core-3.1.3.RELEASE.jar,\
-               lib/spring-security-remoting-3.1.3.RELEASE.jar,\
-               lib/unitils-core-3.4.2.jar,\
-               lib/commons-logging-1.1.1.jar,\
-               lib/commons-lang-2.6.jar,\
-               lib/aopalliance-1.0.jar,\
-               lib/joda-time-2.1.jar,\
-               lib/lsid-client-1.1.2.jar,\
-               lib/lucene-core-3.6.2.jar,\
-               lib/lsid-server-1.1.2.jar,\
-               lib/slf4j-api-1.7.2.jar,\
-               lib/javassist-3.17.1-GA.jar,\
-               src/main/resources/etc/jetty/cdmlib-remote-webapp.war,\
-               lib/unitils-spring-3.4.2.jar,\
-               lib/unitils-database-3.4.2.jar,\
-               lib/commons-dbcp-1.4.jar,\
-               lib/commons-pool-1.5.4.jar,\
-               lib/unitils-dbmaintainer-3.4.2.jar,\
-               lib/h2-1.4.181.jar,\
-               lib/unitils-dbunit-3.4.2.jar,\
-               lib/hibernate-jpa-2.0-api-1.0.1.Final.jar,\
-               lib/hibernate-commons-annotations-4.0.1.Final.jar,\
-               lib/hibernate-core-4.1.10.Final.jar,\
-               lib/hibernate-entitymanager-4.1.10.Final.jar,\
-               lib/hibernate-envers-4.1.10.Final.jar,\
-               lib/hibernate-search-engine-4.2.0.Final.jar,\
-               lib/org.springframework.context-3.2.2.RELEASE.jar,\
-               lib/org.springframework.aop-3.2.2.RELEASE.jar,\
-               lib/org.springframework.aspects-3.2.2.RELEASE.jar,\
-               lib/org.springframework.beans-3.2.2.RELEASE.jar,\
-               lib/org.springframework.core-3.2.2.RELEASE.jar,\
-               lib/org.springframework.expression-3.2.2.RELEASE.jar,\
-               lib/org.springframework.jdbc-3.2.2.RELEASE.jar,\
-               lib/org.springframework.orm-3.2.2.RELEASE.jar,\
-               lib/org.springframework.transaction-3.2.2.RELEASE.jar,\
-               lib/org.springframework.web-3.2.2.RELEASE.jar,\
-               src/main/resources/etc/jetty/jetty-runner-9.1.5.v20140505.jar,\
-               lib/cdmlib-persistence-3.3.8-SNAPSHOT.jar,\
-               lib/dbunit-2.4.9.jar
diff --git a/eu.etaxonomy.taxeditor.remoting/pom.xml b/eu.etaxonomy.taxeditor.remoting/pom.xml
deleted file mode 100644 (file)
index 6df07fe..0000000
+++ /dev/null
@@ -1,539 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project>
-
-  <parent>
-    <groupId>eu.etaxonomy</groupId>
-    <artifactId>taxeditor-parent</artifactId>
-    <version>3.3.8-SNAPSHOT</version>
-  </parent>
-  <modelVersion>4.0.0</modelVersion>
-  <artifactId>eu.etaxonomy.taxeditor.remoting</artifactId>
-  <packaging>eclipse-plugin</packaging>
-  <name>Remoting Bundle</name>
-  <description>Remoting Plugin Taxonomic Editor</description>
-
-  <build>
-    <pluginManagement>
-      <plugins>
-        <plugin>
-          <groupId>org.apache.maven.plugins</groupId>
-          <artifactId>maven-surefire-plugin</artifactId>
-          <version>2.7</version>
-        </plugin>
-      </plugins>
-    </pluginManagement>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-dependency-plugin</artifactId>
-        <version>2.4</version>
-        <executions>
-          <execution>
-            <id>copy-dependencies</id>
-            <phase>validate</phase>
-            <goals>
-              <goal>copy-dependencies</goal>
-            </goals>
-            <configuration>
-              <excludeArtifactIds>
-                cdmlib-remote-webapp
-              </excludeArtifactIds>
-              <includeArtifactIds>
-                cdmlib-services,cdmlib-commons,cdmlib-persistence,cdmlib-ext,cdmlib-model
-              </includeArtifactIds>
-              <outputDirectory>${basedir}/lib</outputDirectory>
-              <overWriteReleases>true</overWriteReleases>
-              <overWriteSnapshots>true</overWriteSnapshots>
-              <excludeTransitive>true</excludeTransitive>
-            </configuration>
-          </execution>
-          <execution>
-            <id>copy-dependency-war</id>
-            <phase>validate</phase>
-            <goals>
-              <goal>copy-dependencies</goal>
-            </goals>
-            <configuration>
-              <includeArtifactIds>
-                cdmlib-remote-webapp
-              </includeArtifactIds>
-              <outputDirectory>
-                ${basedir}/src/main/resources/etc/jetty
-              </outputDirectory>
-              <overWriteReleases>true</overWriteReleases>
-              <overWriteSnapshots>true</overWriteSnapshots>
-              <excludeTransitive>true</excludeTransitive>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-antrun-plugin</artifactId>
-        <version>1.7</version>
-        <executions>
-          <execution>
-            <id>update-snapshot-jar-names</id>
-            <phase>validate</phase>
-            <goals>
-              <goal>run</goal>
-            </goals>
-            <configuration>
-              <target>
-                <echo>Anonymizing war</echo>
-                <move todir="./src/main/resources/etc/jetty">
-                  <fileset dir="./src/main/resources/etc/jetty" />
-                  <mapper type="regexp"
-                    from="(^cdmlib\-.*)\-[0-9]\.[0-9]\.[0-9]\-SNAPSHOT(\.war)"
-                    to="\1\2" />
-                </move>
-                <move todir="./src/main/resources/etc/jetty">
-                  <fileset dir="./src/main/resources/etc/jetty" />
-                  <mapper type="regexp"
-                    from="(^cdmlib\-.*)\-[0-9]\.[0-9]\.[0-9]\-[0-9.-]+(\.war)"
-                    to="\1\2" />
-                </move>
-                <echo>Update cdmlib jars to SNAPSHOT when build with
-                  timestamp
-                </echo>
-                <move todir="./lib">
-                  <fileset dir="./lib" />
-                  <mapper type="regexp"
-                    from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\.jar)"
-                    to="\1SNAPSHOT\2" />
-                </move>
-                <move todir="./lib">
-                  <fileset dir="./lib" />
-                  <mapper type="regexp"
-                    from="(^cdmlib\-.*\-[0-9]\.[0-9]\.[0-9]\-)[0-9.-]+(\-sources\.jar)"
-                    to="\1SNAPSHOT\2" />
-                </move>
-              </target>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-  <profiles>
-    <profile>
-      <id>cleanCdmlibJars</id>
-      <build>
-        <plugins>
-          <plugin>
-            <artifactId>maven-clean-plugin</artifactId>
-            <version>2.3</version>
-            <configuration>
-              <filesets>
-                <fileset>
-                  <directory>${basedir}/lib</directory>
-                  <includes>
-                    <include>cdmlib-*</include>
-                  </includes>
-                  <followSymlinks>false</followSymlinks>
-                </fileset>
-              </filesets>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-    <profile>
-      <id>cleanAllJars</id>
-      <build>
-        <plugins>
-          <plugin>
-            <artifactId>maven-clean-plugin</artifactId>
-            <version>2.3</version>
-            <configuration>
-              <filesets>
-                <fileset>
-                  <directory>${basedir}/lib</directory>
-                  <includes>
-                    <include>*</include>
-                  </includes>
-                  <followSymlinks>false</followSymlinks>
-                </fileset>
-              </filesets>
-            </configuration>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-    <profile>
-      <id>copyAllJars</id>
-      <build>
-        <plugins>
-          <plugin>
-            <groupId>org.apache.maven.plugins</groupId>
-            <artifactId>maven-dependency-plugin</artifactId>
-            <version>2.4</version>
-            <executions>
-              <execution>
-                <id>copy-all-dependencies</id>
-                <phase>validate</phase>
-                <goals>
-                  <goal>copy-dependencies</goal>
-                </goals>
-                <configuration>
-                  <excludeArtifactIds>
-                    cdmlib-remote-webapp
-                  </excludeArtifactIds>
-                  <outputDirectory>${basedir}/lib</outputDirectory>
-                  <overWriteReleases>true</overWriteReleases>
-                  <overWriteSnapshots>true</overWriteSnapshots>
-                  <excludeTransitive>true</excludeTransitive>
-                </configuration>
-              </execution>
-            </executions>
-          </plugin>
-        </plugins>
-      </build>
-    </profile>
-  </profiles>
-  <repositories>
-    <repository>
-      <id>SpringSource Enterprise Bundle Repository - External Bundle
-        Milestones</id>
-      <url>http://repository.springsource.com/maven/bundles/milestone
-      </url>
-    </repository>
-    <repository>
-      <id>SpringSource Enterprise Bundle Repository - SpringSource
-        Bundle Releases</id>
-      <url>http://repository.springsource.com/maven/bundles/release
-      </url>
-    </repository>
-    <repository>
-      <id>SpringSource Enterprise Bundle Repository - External Bundle
-        Releases</id>
-      <url>http://repository.springsource.com/maven/bundles/external
-      </url>
-    </repository>
-  </repositories>
-  <dependencies>
-    <dependency>
-      <groupId>eu.etaxonomy</groupId>
-      <artifactId>cdmlib-remote-webapp</artifactId>
-      <version>${cdmlib.version}</version>
-      <type>war</type>
-    </dependency>
-    <dependency>
-      <groupId>eu.etaxonomy</groupId>
-      <artifactId>cdmlib-services</artifactId>
-      <version>${cdmlib.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>eu.etaxonomy</groupId>
-      <artifactId>cdmlib-commons</artifactId>
-      <version>${cdmlib.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>eu.etaxonomy</groupId>
-      <artifactId>cdmlib-persistence</artifactId>
-      <version>${cdmlib.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>eu.etaxonomy</groupId>
-      <artifactId>cdmlib-ext</artifactId>
-      <version>${cdmlib.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>eu.etaxonomy</groupId>
-      <artifactId>cdmlib-model</artifactId>
-      <version>${cdmlib.version}</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.unitils</groupId>
-      <artifactId>unitils-core</artifactId>
-      <version>3.4.2</version>
-    </dependency>
-    <!-- <dependency> -->
-    <!-- <groupId>org.eclipse.jetty</groupId> -->
-    <!-- <artifactId>jetty-server</artifactId> -->
-    <!-- <version>9.1.3.v20140225</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.eclipse.jetty</groupId> -->
-    <!-- <artifactId>jetty-util</artifactId> -->
-    <!-- <version>9.1.3.v20140225</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.eclipse.jetty</groupId> -->
-    <!-- <artifactId>jetty-xml</artifactId> -->
-    <!-- <version>9.1.3.v20140225</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.eclipse.jetty</groupId> -->
-    <!-- <artifactId>jetty-servlet</artifactId> -->
-    <!-- <version>9.1.3.v20140225</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.eclipse.jetty</groupId> -->
-    <!-- <artifactId>jetty-webapp</artifactId> -->
-    <!-- <version>9.1.3.v20140225</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.eclipse.jetty</groupId> -->
-    <!-- <artifactId>jetty-security</artifactId> -->
-    <!-- <version>9.1.3.v20140225</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.eclipse.jetty</groupId> -->
-    <!-- <artifactId>jetty-http</artifactId> -->
-    <!-- <version>${jetty.version}</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>org.eclipse.jetty</groupId> -->
-    <!-- <artifactId>jetty-io</artifactId> -->
-    <!-- <version>${jetty.version}</version> -->
-    <!-- </dependency> -->
-    <!-- <dependency> -->
-    <!-- <groupId>javax.servlet</groupId> -->
-    <!-- <artifactId>javax.servlet-api</artifactId> -->
-    <!-- <version>3.1.0</version> -->
-    <!-- </dependency> -->
-
-    <!-- <dependency> -->
-    <!-- <groupId>javax.servlet</groupId> -->
-    <!-- <artifactId>jsp-api</artifactId> -->
-    <!-- <version>2.0</version> -->
-    <!-- </dependency> -->
-
-    <dependency>
-      <groupId>net.sf.ehcache</groupId>
-      <artifactId>ehcache-core</artifactId>
-      <version>2.4.3</version>
-    </dependency>
-    <dependency>
-      <groupId>org.hibernate</groupId>
-      <artifactId>hibernate-core</artifactId>
-      <version>4.1.10.Final</version>
-    </dependency>
-    <dependency>
-      <groupId>org.hibernate.common</groupId>
-      <artifactId>hibernate-commons-annotations</artifactId>
-      <version>4.0.1.Final</version>
-    </dependency>
-    <dependency>
-      <groupId>org.hibernate</groupId>
-      <artifactId>hibernate-search-engine</artifactId>
-      <version>4.2.0.Final</version>
-    </dependency>
-    <dependency>
-      <groupId>org.hibernate.javax.persistence</groupId>
-      <artifactId>hibernate-jpa-2.0-api</artifactId>
-      <version>1.0.1.Final</version>
-    </dependency>
-    <dependency>
-      <groupId>org.hibernate</groupId>
-      <artifactId>hibernate-envers</artifactId>
-      <version>4.1.10.Final</version>
-    </dependency>
-    <dependency>
-      <groupId>org.hibernate</groupId>
-      <artifactId>hibernate-entitymanager</artifactId>
-      <version>4.1.10.Final</version>
-    </dependency>
-    <dependency>
-      <groupId>junit</groupId>
-      <artifactId>junit</artifactId>
-      <version>4.11</version>
-      <scope>test</scope>
-    </dependency>
-    <dependency>
-      <groupId>log4j</groupId>
-      <artifactId>log4j</artifactId>
-      <version>1.2.17</version>
-    </dependency>
-    <dependency>
-      <groupId>org.jdom</groupId>
-      <artifactId>jdom</artifactId>
-      <version>1.1.3</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.context</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.aspects</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.beans</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.transaction</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.web</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.core</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.aop</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.expression</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.orm</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework</groupId>
-      <artifactId>org.springframework.jdbc</artifactId>
-      <version>3.2.2.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.security</groupId>
-      <artifactId>spring-security-core</artifactId>
-      <version>3.1.3.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.security</groupId>
-      <artifactId>spring-security-config</artifactId>
-      <version>3.1.3.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.springframework.security</groupId>
-      <artifactId>spring-security-remoting</artifactId>
-      <version>3.1.3.RELEASE</version>
-    </dependency>
-    <dependency>
-      <groupId>org.jboss.logging</groupId>
-      <artifactId>jboss-logging</artifactId>
-      <version>3.1.3.GA</version>
-    </dependency>
-    <dependency>
-      <groupId>org.hamcrest</groupId>
-      <artifactId>hamcrest-core</artifactId>
-      <version>1.3</version>
-    </dependency>
-    <dependency>
-      <groupId>com.mchange</groupId>
-      <artifactId>c3p0</artifactId>
-      <version>0.9.2</version>
-    </dependency>
-    <dependency>
-      <groupId>org.jboss.spec.javax.transaction</groupId>
-      <artifactId>jboss-transaction-api_1.1_spec</artifactId>
-      <version>1.0.0.Final</version>
-    </dependency>
-    <dependency>
-      <groupId>org.aspectj</groupId>
-      <artifactId>aspectjrt</artifactId>
-      <version>1.7.1</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-logging</groupId>
-      <artifactId>commons-logging</artifactId>
-      <version>1.1.1</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-lang</groupId>
-      <artifactId>commons-lang</artifactId>
-      <version>2.6</version>
-    </dependency>
-    <dependency>
-      <groupId>aopalliance</groupId>
-      <artifactId>aopalliance</artifactId>
-      <version>1.0</version>
-    </dependency>
-    <dependency>
-      <groupId>joda-time</groupId>
-      <artifactId>joda-time</artifactId>
-      <version>2.1</version>
-    </dependency>
-    <dependency>
-      <groupId>com.ibm.lsid</groupId>
-      <artifactId>lsid-client</artifactId>
-      <version>1.1.2</version>
-    </dependency>
-    <dependency>
-      <groupId>com.ibm.lsid</groupId>
-      <artifactId>lsid-server</artifactId>
-      <version>1.1.2</version>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.lucene</groupId>
-      <artifactId>lucene-core</artifactId>
-      <version>3.6.2</version>
-    </dependency>
-    <dependency>
-      <groupId>org.slf4j</groupId>
-      <artifactId>slf4j-api</artifactId>
-      <version>1.7.2</version>
-    </dependency>
-    <dependency>
-      <groupId>org.javassist</groupId>
-      <artifactId>javassist</artifactId>
-      <version>3.17.1-GA</version>
-    </dependency>
-    <dependency>
-      <groupId>au.com.bytecode</groupId>
-      <artifactId>opencsv</artifactId>
-      <version>2.4</version>
-    </dependency>
-
-
-    <!-- For Unit Tests -->
-    <dependency>
-      <groupId>org.unitils</groupId>
-      <artifactId>unitils-spring</artifactId>
-      <version>3.4.2</version>
-    </dependency>
-    <dependency>
-      <groupId>org.unitils</groupId>
-      <artifactId>unitils-database</artifactId>
-      <version>3.4.2</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-dbcp</groupId>
-      <artifactId>commons-dbcp</artifactId>
-      <version>1.4</version>
-    </dependency>
-    <dependency>
-      <groupId>commons-pool</groupId>
-      <artifactId>commons-pool</artifactId>
-      <version>1.5.4</version>
-    </dependency>
-    <dependency>
-      <groupId>org.unitils</groupId>
-      <artifactId>unitils-dbmaintainer</artifactId>
-      <version>3.4.2</version>
-    </dependency>
-    <dependency>
-      <groupId>com.h2database</groupId>
-      <artifactId>h2</artifactId>
-      <version>1.4.181</version>
-    </dependency>
-    <dependency>
-      <groupId>org.unitils</groupId>
-      <artifactId>unitils-dbunit</artifactId>
-      <version>3.4.2</version>
-    </dependency>
-    <dependency>
-      <groupId>org.dbunit</groupId>
-      <artifactId>dbunit</artifactId>
-      <version>2.4.9</version>
-    </dependency>
-  </dependencies>
-</project>
\ No newline at end of file
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteConfiguration.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteConfiguration.java
deleted file mode 100644 (file)
index 90cfc09..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-/**\r
-* Copyright (C) 2014 EDIT\r
-* European Distributed Institute of Taxonomy \r
-* http://www.e-taxonomy.eu\r
-* \r
-* The contents of this file are subject to the Mozilla Public License Version 1.1\r
-* See LICENSE.TXT at the top of this package for the full license terms.\r
-*/\r
-\r
-package eu.etaxonomy.cdm.api.application;\r
-\r
-import javax.sql.DataSource;\r
-\r
-import org.hibernate.SessionFactory;\r
-\r
-import org.apache.log4j.Logger;\r
-import org.springframework.beans.factory.annotation.Autowired;\r
-import org.springframework.stereotype.Component;\r
-import org.springframework.transaction.PlatformTransactionManager;\r
-import org.springframework.transaction.TransactionStatus;\r
-\r
-import eu.etaxonomy.cdm.api.conversation.ConversationHolder;\r
-import eu.etaxonomy.cdm.api.conversation.ConversationHolderMock;\r
-import eu.etaxonomy.cdm.api.service.IDatabaseService;\r
-import eu.etaxonomy.cdm.ext.geo.IEditGeoService;\r
-\r
-\r
-/**\r
- * CDM Application Configuration class which manages the configuration for remoting\r
- * clients\r
- *\r
- */\r
-@Component\r
-public class CdmApplicationRemoteConfiguration extends CdmApplicationDefaultConfiguration {\r
-       \r
-       @SuppressWarnings("unused")\r
-       private static final Logger logger = Logger.getLogger(CdmApplicationRemoteConfiguration.class);\r
-\r
-       @Autowired\r
-       IEditGeoService editGeoService;\r
-       \r
-       public CdmApplicationRemoteConfiguration() {\r
-       }\r
-       \r
-    /* (non-Javadoc)\r
-     * @see eu.etaxonomy.cdm.api.application.CdmApplicationDefaultConfiguration#getTransactionManager()\r
-     */\r
-    @Override\r
-    public PlatformTransactionManager getTransactionManager() throws UnsupportedOperationException {\r
-               throw new UnsupportedOperationException("getTransactionManager is not implemented for CdmApplicationRemoteConfiguration");\r
-       }\r
-\r
-\r
-    /* (non-Javadoc)\r
-     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#startTransaction()\r
-     */\r
-    @Override\r
-    public TransactionStatus startTransaction() throws UnsupportedOperationException {\r
-               throw new UnsupportedOperationException("startTransaction is not implemented for CdmApplicationRemoteConfiguration");\r
-       }\r
-\r
-\r
-    /* (non-Javadoc)\r
-     * @see eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration#startTransaction()\r
-     */\r
-    @Override\r
-    public TransactionStatus startTransaction(Boolean readOnly) throws UnsupportedOperationException {\r
-               throw new UnsupportedOperationException("startTransaction is not implemented for CdmApplicationRemoteConfiguration");\r
-       }\r
-\r
-\r
-    /* (non-Javadoc)\r
-     * @see eu.etaxonomy.cdm.api.application.CdmApplicationDefaultConfiguration#commitTransaction(org.springframework.transaction.TransactionStatus)\r
-     */\r
-    @Override\r
-    public void commitTransaction(TransactionStatus txStatus) throws UnsupportedOperationException {\r
-               throw new UnsupportedOperationException("commitTransaction is not implemented for CdmApplicationRemoteConfiguration");\r
-       }\r
-                       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.api.application.CdmApplicationDefaultConfiguration#NewConversation()\r
-        */\r
-       @Override\r
-       public ConversationHolder NewConversation() {           \r
-               return new ConversationHolderMock();\r
-       }\r
-       \r
-       /**\r
-        * @return\r
-        */\r
-       public IEditGeoService getEditGeoService() {\r
-               return this.editGeoService;\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.api.application.CdmApplicationDefaultConfiguration#setDataSource(javax.sql.DataSource)\r
-        */\r
-       @Override\r
-       public void setDataSource(DataSource dataSource) {                      \r
-    }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.api.application.CdmApplicationDefaultConfiguration#setTransactionManager(org.springframework.transaction.PlatformTransactionManager)\r
-        */\r
-       @Override\r
-       public void setTransactionManager(PlatformTransactionManager transactionManager) {        \r
-    }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.api.application.CdmApplicationDefaultConfiguration#setSessionFactory(org.hibernate.SessionFactory)\r
-        */\r
-       @Override\r
-    public void setSessionFactory(SessionFactory sessionFactory) {     \r
-    }\r
-}\r
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteController.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/application/CdmApplicationRemoteController.java
deleted file mode 100644 (file)
index 26a5ba9..0000000
+++ /dev/null
@@ -1,194 +0,0 @@
-/**
-* Copyright (C) 2014 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.cdm.api.application;
-
-import java.util.List;
-import java.util.Properties;
-
-import org.apache.log4j.Logger;
-import org.hibernate.collection.internal.AbstractPersistentCollection;
-import org.hibernate.proxy.AbstractLazyInitializer;
-import org.springframework.beans.MutablePropertyValues;
-import org.springframework.beans.factory.config.BeanDefinition;
-import org.springframework.beans.factory.xml.XmlBeanDefinitionReader;
-import org.springframework.context.ApplicationListener;
-import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
-import org.springframework.core.io.ClassPathResource;
-import org.springframework.core.io.Resource;
-
-import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
-import eu.etaxonomy.cdm.common.monitor.NullProgressMonitor;
-import eu.etaxonomy.cdm.common.monitor.SubProgressMonitor;
-import eu.etaxonomy.cdm.remote.ICdmRemoteSource;
-
-/**
- * CDM Application Controller class for remoting clients
- *
- * FIXME:Remoting extending {@link CdmApplicationController} is a temporary workaround.
- * The {@link CdmApplicationController} should be split into a CdmApplicationControllerBase
- * class with {@link CdmApplicationController} and this class as subclasses
- *
- */
-public class CdmApplicationRemoteController  extends CdmApplicationController {
-
-    private static final Logger logger = Logger.getLogger(CdmApplicationRemoteController.class);
-
-    public static final Resource DEFAULT_REMOTE_APPLICATION_CONTEXT_RESOURCE =
-               new ClassPathResource("/eu/etaxonomy/cdm/remotingApplicationContext.xml");
-    private final Resource applicationContextResource;
-    private final IProgressMonitor progressMonitor;
-
-    /**
-     * Creates new instance of CdmApplicationRemoteController
-     *
-     * @param applicationContextResource
-     * @param remoteSource
-     * @param omitTermLoading
-     * @param progressMonitor
-     * @param listeners
-     * @return
-     */
-    public static CdmApplicationRemoteController NewInstance(Resource applicationContextResource,
-                       ICdmRemoteSource remoteSource,
-                       boolean omitTermLoading,
-                       IProgressMonitor progressMonitor,
-                       List<ApplicationListener> listeners) {
-       return new CdmApplicationRemoteController(applicationContextResource,
-                       remoteSource,
-                       omitTermLoading,
-                       progressMonitor,
-                               listeners);
-
-    }
-    /**
-     * Creates new instance of CdmApplicationRemoteController
-     *
-     * @param applicationContextResource
-     * @param remoteSource
-     * @param omitTermLoading
-     * @param progressMonitor
-     * @param listeners
-     * @return
-     */
-    public static CdmApplicationRemoteController NewInstance(ICdmRemoteSource remoteSource,
-                       boolean omitTermLoading,
-                       IProgressMonitor progressMonitor,
-                       List<ApplicationListener> listeners) {
-
-       return new CdmApplicationRemoteController(DEFAULT_REMOTE_APPLICATION_CONTEXT_RESOURCE,
-                       remoteSource,
-                       omitTermLoading,
-                       progressMonitor,
-                               listeners);
-
-    }
-
-       /**
-        * Constructs CdmApplicationRemoteController
-        *
-        * @param applicationContextResource
-        * @param remoteSource
-        * @param omitTermLoading
-        * @param progressMonitor
-        * @param listeners
-        */
-       private CdmApplicationRemoteController(Resource applicationContextResource,
-                               ICdmRemoteSource remoteSource,
-                               boolean omitTermLoading,
-                               IProgressMonitor progressMonitor,
-                               List<ApplicationListener> listeners){
-               logger.info("Start CdmApplicationRemoteController with remote source: " + remoteSource.getName());
-        this.applicationContextResource =
-                       applicationContextResource != null ? applicationContextResource : DEFAULT_REMOTE_APPLICATION_CONTEXT_RESOURCE;
-        this.progressMonitor = progressMonitor != null ? progressMonitor : new NullProgressMonitor();
-
-        setNewRemoteSource(remoteSource, omitTermLoading, listeners);
-
-       }
-
-
-
-
-    /**
-     * Creates and starts a new spring application context
-     *
-     * @param remoteSource object for connecting to an http-invoker server
-     * @param omitTermLoading
-     * @param listeners
-     * @return
-     */
-    protected boolean setNewRemoteSource(ICdmRemoteSource remoteSource,
-               boolean omitTermLoading,
-               List<ApplicationListener> listeners){
-
-        logger.info("Connecting to '" + remoteSource.getName() + "'");
-
-        MonitoredGenericApplicationContext applicationContext =  new MonitoredGenericApplicationContext();
-        int refreshTasks = 45;
-        int nTasks = 5 + refreshTasks;
-
-        progressMonitor.beginTask("Connecting to '" + remoteSource.getName() + "'", nTasks);
-
-        progressMonitor.subTask("Registering remote source.");
-        PropertySourcesPlaceholderConfigurer pspc = new PropertySourcesPlaceholderConfigurer();
-        Properties properties = new Properties();
-        properties.setProperty("remoteServer", remoteSource.getServer());
-        properties.setProperty("remotePort", String.valueOf(remoteSource.getPort()));
-        properties.setProperty("remoteContext", remoteSource.getContextPath());
-        pspc.setProperties(properties);
-        applicationContext.addBeanFactoryPostProcessor(pspc);
-        applicationContext.getEnvironment().setActiveProfiles("remoting");
-        progressMonitor.worked(1);
-
-        XmlBeanDefinitionReader xmlReader = new XmlBeanDefinitionReader(applicationContext);
-        //xmlReader.setValidationMode(XmlBeanDefinitionReader.VALIDATION_NONE);
-        progressMonitor.subTask("Registering resources.");
-        xmlReader.loadBeanDefinitions(applicationContextResource);
-        progressMonitor.worked(1);
-
-        //omitTerms
-        if (omitTermLoading == true){
-            String initializerName = "persistentTermInitializer";
-            BeanDefinition beanDef = applicationContext.getBeanDefinition(initializerName);
-            MutablePropertyValues values = beanDef.getPropertyValues();
-            values.addPropertyValue("omit", omitTermLoading);
-        }
-
-        if (listeners != null){
-            for(ApplicationListener listener : listeners){
-                applicationContext.addApplicationListener(listener);
-            }
-        }
-
-
-        applicationContext.refresh(new SubProgressMonitor(progressMonitor, refreshTasks));
-        applicationContext.start();
-
-        progressMonitor.subTask("Cleaning up.");
-        setApplicationContext(applicationContext);
-        progressMonitor.worked(1);
-
-        progressMonitor.done();
-        return true;
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.cdm.api.application.CdmApplicationController#init()
-     */
-    @Override
-    protected void init(){
-        configuration = (ICdmApplicationConfiguration)applicationContext.getBean("cdmApplicationRemoteConfiguration");
-               AbstractLazyInitializer.setConfiguration(this);
-               AbstractPersistentCollection.setConfiguration(this);
-
-    }
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/cache/CdmServiceCacher.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/api/cache/CdmServiceCacher.java
deleted file mode 100644 (file)
index 6be6919..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-package eu.etaxonomy.cdm.api.cache;
-
-import java.util.UUID;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import eu.etaxonomy.cdm.api.service.ITermService;
-import eu.etaxonomy.cdm.model.common.CdmBase;
-
-/**
- * Class which uses CDM services to cache cdm entities
- * 
- * FIXME: Currently only handles terms entities. It would be 
- *        interesting to have a generic method which finds the
- *        correct service to load / cache the entity.
- * 
- * @author cmathew
- *
- * @param <T>
- */
-@Component
-public class CdmServiceCacher<T extends CdmBase> extends CdmCacher<T> {
-
-       @Autowired
-       ITermService termService;
-       
-       @Override
-       protected T findByUuid(UUID uuid) {
-               return (T)termService.findWithoutFlush(uuid);
-       }
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmPersistentRemoteSource.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmPersistentRemoteSource.java
deleted file mode 100644 (file)
index 854643d..0000000
+++ /dev/null
@@ -1,242 +0,0 @@
-/**
-* Copyright (C) 2014 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.cdm.remote;
-
-import static eu.etaxonomy.cdm.common.XmlHelp.getBeansRoot;
-import static eu.etaxonomy.cdm.common.XmlHelp.insertXmlBean;
-import static eu.etaxonomy.cdm.common.XmlHelp.insertXmlValueProperty;
-import static eu.etaxonomy.cdm.common.XmlHelp.saveToXml;
-
-import java.util.ArrayList;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.Properties;
-
-import org.apache.log4j.Logger;
-import org.jdom.Attribute;
-import org.jdom.Element;
-
-import eu.etaxonomy.cdm.common.CdmUtils;
-import eu.etaxonomy.cdm.common.XmlHelp;
-import eu.etaxonomy.cdm.config.CdmPersistentSourceUtils;
-import eu.etaxonomy.cdm.config.CdmPersistentXMLSource;
-import eu.etaxonomy.cdm.config.CdmPersistentXMLSource.CdmSourceProperties;
-import eu.etaxonomy.cdm.config.ICdmPersistentSource;
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
-
-/**
- * Class representing a CDM remote source which can be persisted to a source config file
- *
- */
-public class CdmPersistentRemoteSource extends CdmRemoteSourceBase implements ICdmPersistentSource{
-       private static final Logger logger = Logger.getLogger(CdmPersistentRemoteSource.class);
-
-       public static final String REMOTESOURCE_BEAN_POSTFIX = "RemoteSource";
-       private String beanName;
-       private Properties cdmSourceProperties;
-       private List<Attribute> cdmSourceAttributes;
-
-       /**
-        * Creates a new instance of CdmPersistentRemoteSource
-        *
-        * @param name
-        * @param server
-        * @param port
-        * @param contextPath
-        * @param nomenclaturalCode
-        * @return
-        * @throws CdmRemoteSourceException
-        */
-       public static CdmPersistentRemoteSource NewInstance(String remoteSource) throws CdmRemoteSourceException {
-               if(exists(remoteSource)) {
-                       return new CdmPersistentRemoteSource(remoteSource);
-               } else {
-                       throw new CdmRemoteSourceException("Remote source '" + remoteSource + "' does not exist in sources setting file");
-               }
-
-       }
-
-       /**S
-        * Creates a new CdmPersistentRemoteSource
-        *
-        * @param name
-        * @param server
-        * @param port
-        * @param contextPath
-        * @param nomenclaturalCode
-        * @throws CdmRemoteSourceException
-        */
-       private CdmPersistentRemoteSource(String remoteSource) throws CdmRemoteSourceException {
-
-               CdmPersistentXMLSource cdmPersistentXMLSource = CdmPersistentXMLSource.NewInstance(remoteSource, REMOTESOURCE_BEAN_POSTFIX);
-               if(cdmPersistentXMLSource.getElement() != null) {
-                       beanName = cdmPersistentXMLSource.getBeanName();
-                       // properties from the persistent xml file
-                       cdmSourceProperties = cdmPersistentXMLSource.getCdmSourceProperties();
-                       cdmSourceAttributes = cdmPersistentXMLSource.getCdmSourceAttributes();
-                       checkProperties(cdmSourceProperties);
-               } else {
-                       throw new CdmRemoteSourceException("Remote source '" + remoteSource + "' does not exist in settings file");
-               }
-               initDatabaseConnection();
-       }
-
-       private static void checkProperties(Properties cdmSourceProperties) throws CdmRemoteSourceException {
-               if(!cdmSourceProperties.containsKey(CdmSourceProperties.SERVER.toString())) {
-                       throw new CdmRemoteSourceException("Could not initialise remote source. Required property '" + CdmSourceProperties.SERVER.toString() + "' is missing");
-               }
-               String port = (String)cdmSourceProperties.get(CdmSourceProperties.PORT.toString());
-               if(port == null || port.isEmpty()) {
-                       throw new CdmRemoteSourceException("Could not initialise remote source. Required property '" + CdmSourceProperties.SERVER.toString() + "' is missing");
-               }
-               if(!cdmSourceProperties.containsKey(CdmSourceProperties.CONTEXTPATH.toString())) {
-                       throw new CdmRemoteSourceException("Could not initialise remote source. Required property '" + CdmSourceProperties.SERVER.toString() + "' is missing");
-               }
-               // default NomenclaturalCode is always ICNAFP
-               if(!cdmSourceProperties.containsKey(CdmSourceProperties.NOMENCLATURAL_CODE.toString())) {
-                       cdmSourceProperties.put(CdmSourceProperties.NOMENCLATURAL_CODE.toString(), NomenclaturalCode.ICNAFP.name());
-               }
-       }
-
-       /* (non-Javadoc)
-        * @see eu.etaxonomy.cdm.config.ICdmPersistentSource#getBeanName()
-        */
-       @Override
-       public String getBeanName() {
-               return beanName;
-       }
-
-       @Override
-       public String getServer() {
-               return cdmSourceProperties.getProperty(CdmSourceProperties.SERVER.toString());
-       }
-
-       @Override
-       public int getPort() {
-               String port = CdmUtils.Nz(cdmSourceProperties.getProperty(CdmSourceProperties.PORT.toString()));
-               if (port == null || "".equals(port)){
-                       return -1;
-               }else{
-                       //TODO exception if non integer
-                       return Integer.valueOf(port);
-               }
-       }
-
-       @Override
-       public String getContextPath() {
-               return cdmSourceProperties.getProperty(CdmSourceProperties.CONTEXTPATH.toString());
-       }
-
-       @Override
-       public NomenclaturalCode getNomenclaturalCode() {
-               return NomenclaturalCode.fromString(cdmSourceProperties.getProperty(CdmSourceProperties.NOMENCLATURAL_CODE.toString()));
-       }
-
-       public static CdmPersistentRemoteSource save(String strRemoteSourceName, ICdmRemoteSource remoteSource) throws CdmRemoteSourceException {
-               Properties cdmSourceProperties = new Properties();
-               cdmSourceProperties.put(CdmSourceProperties.SERVER.toString(), remoteSource.getServer());
-               cdmSourceProperties.put(CdmSourceProperties.PORT.toString(), String.valueOf(remoteSource.getPort()));
-               cdmSourceProperties.put(CdmSourceProperties.CONTEXTPATH.toString(), remoteSource.getContextPath());
-               cdmSourceProperties.put(CdmSourceProperties.NOMENCLATURAL_CODE.toString(), remoteSource.getNomenclaturalCode().name());
-               checkProperties(cdmSourceProperties);
-               return save(strRemoteSourceName, cdmSourceProperties);
-       }
-
-       private static CdmPersistentRemoteSource save(String strRemoteSourceName,Properties cdmSourceProperties) throws CdmRemoteSourceException {
-
-               //root
-               Element root = getBeansRoot(CdmPersistentSourceUtils.getCdmSourceInputStream());
-               if (root == null){
-                       return null;
-               }
-               //bean
-               Element bean = XmlHelp.getFirstAttributedChild(root, "bean", "id", CdmPersistentSourceUtils.getBeanName(strRemoteSourceName, REMOTESOURCE_BEAN_POSTFIX));
-               if (bean != null){
-                       bean.detach();  //delete old version if necessary
-               }
-               bean = insertXmlBean(root, CdmPersistentSourceUtils.getBeanName(strRemoteSourceName, REMOTESOURCE_BEAN_POSTFIX), CdmPersistentRemoteSource.class.getName());
-
-
-               Properties props = cdmSourceProperties;
-               Enumeration e = props.propertyNames();
-
-               while (e.hasMoreElements()) {
-                       String key = (String) e.nextElement();
-                       insertXmlValueProperty(bean, key, props.getProperty(key));
-               }
-
-               //save
-               saveToXml(root.getDocument(),
-                               CdmPersistentSourceUtils.getResourceDirectory(),
-                               CdmPersistentXMLSource.CDMSOURCE_FILE_NAME,
-                               XmlHelp.prettyFormat );
-
-               return NewInstance(strRemoteSourceName) ;
-
-       }
-
-       /**
-        * @param strDataSourceName
-        * @param dataSource
-        * @param code
-        * @return
-        *                      the updated dataSource, null if not succesful
-        */
-       public static CdmPersistentRemoteSource update(String strRemoteSourceName,
-                       ICdmRemoteSource remoteSource) throws CdmRemoteSourceException {
-               CdmPersistentSourceUtils.delete(CdmPersistentSourceUtils.getBeanName(strRemoteSourceName,REMOTESOURCE_BEAN_POSTFIX));
-               return save(strRemoteSourceName, remoteSource);
-       }
-
-       /**
-        * Tests existing of the datsource in the according config  file.
-        * @return true if a datasource with the given name exists in the according datasource config file.
-        */
-       public static boolean exists(String strRemoteSourceName){
-               Element bean = CdmPersistentSourceUtils.getCdmSourceBeanXml(strRemoteSourceName, REMOTESOURCE_BEAN_POSTFIX);
-               return (bean != null);
-       }
-
-       /**
-        * Returns a list of all datasources stored in the datasource config file
-        * @return all existing data sources
-        * @throws CdmRemoteSourceException
-        */
-       @SuppressWarnings("unchecked")
-       static public List<CdmPersistentRemoteSource> getAllRemoteSources() throws CdmRemoteSourceException{
-               List<CdmPersistentRemoteSource> remoteSources = new ArrayList<CdmPersistentRemoteSource>();
-
-               Element root = getBeansRoot(CdmPersistentSourceUtils.getCdmSourceInputStream());
-               if (root == null){
-                       return null;
-               }else{
-               List<Element> lsChildren  = root.getChildren("bean", root.getNamespace());
-
-               for (Element elBean : lsChildren){
-                       String strId = elBean.getAttributeValue("id");
-                       if (strId != null && strId.endsWith(REMOTESOURCE_BEAN_POSTFIX)){
-                               strId = strId.replace(REMOTESOURCE_BEAN_POSTFIX, "");
-                               remoteSources.add(new CdmPersistentRemoteSource(strId));
-                       }
-               }
-               }
-               return remoteSources;
-       }
-
-       @Override
-       public String toString(){
-               if (getName() != null){
-                       return getName();
-               }else{
-                       return null;
-               }
-       }
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSource.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSource.java
deleted file mode 100644 (file)
index 9dbb34b..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
-* Copyright (C) 2014 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.cdm.remote;
-
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
-
-/**
- * Class representing a CDM remote source 
- *
- */
-public class CdmRemoteSource extends CdmRemoteSourceBase {
-       
-       /**
-        * Creates a new instance of CdmRemoteSource
-        * 
-        * @param name
-        * @param server
-        * @param port
-        * @param contextPath
-        * @param nomenclaturalCode
-        * @return
-        */
-       public static CdmRemoteSource NewInstance() {
-               return new CdmRemoteSource(DEFAULT_NAME, DEFAULT_SERVER, DEFAULT_PORT, DEFAULT_CONTEXT_PATH, DEFAULT_NOMENCLATURAL_CODE);
-       }
-       
-       /**
-        * Creates a new instance of CdmRemoteSource
-        * 
-        * @param name
-        * @param server
-        * @param port
-        * @param contextPath
-        * @param nomenclaturalCode
-        * @return
-        */
-       public static CdmRemoteSource NewInstance(String name, String server, int port, String contextPath, NomenclaturalCode nomenclaturalCode) {
-               return new CdmRemoteSource(name, server, port, contextPath, nomenclaturalCode);
-       }
-       
-       /**
-        * Creates a new CdmRemoteSource
-        * 
-        * @param name
-        * @param server
-        * @param port
-        * @param contextPath
-        * @param nomenclaturalCode
-        */
-       private CdmRemoteSource(String name, String server, int port, String contextPath, NomenclaturalCode nomenclaturalCode) { 
-               super(name, server, port, contextPath, nomenclaturalCode);
-               
-       }
-
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceBase.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceBase.java
deleted file mode 100644 (file)
index 9fbb8d4..0000000
+++ /dev/null
@@ -1,173 +0,0 @@
-/**
-* Copyright (C) 2014 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.cdm.remote;
-
-import java.util.Map;
-
-import org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean;
-
-import eu.etaxonomy.cdm.api.service.IDatabaseService;
-import eu.etaxonomy.cdm.config.CdmSource;
-import eu.etaxonomy.cdm.config.CdmSourceException;
-import eu.etaxonomy.cdm.model.metadata.CdmMetaData.MetaDataPropertyName;
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
-
-/**
- * Base class representing a CDM remote source.
- * This class handles all the configuration relating to the remoting aspect of
- * a CDM source.
- *
- */
-public class CdmRemoteSourceBase extends CdmSource implements ICdmRemoteSource {
-
-       protected static final String DEFAULT_NAME = "default";
-       protected static final String DEFAULT_SERVER = "127.0.0.1";
-       protected static final int DEFAULT_PORT = 8080;
-       protected static final String DEFAULT_CONTEXT_PATH = "";
-       protected static final NomenclaturalCode DEFAULT_NOMENCLATURAL_CODE = NomenclaturalCode.ICNAFP;
-       private String contextPath;
-       private String baseUrl;
-
-       private IDatabaseService databaseService;
-
-       /**
-        * Constructs a CdmRemoteSourceBase object with default values.
-        *
-        */
-       protected CdmRemoteSourceBase() {
-               setName(DEFAULT_NAME);
-               setServer(DEFAULT_SERVER);
-               setPort(DEFAULT_PORT);
-               setContextPath(DEFAULT_CONTEXT_PATH);
-               setNomenclaturalCode(DEFAULT_NOMENCLATURAL_CODE);
-       }
-
-       /**
-        * Constructs a CdmRemoteSourceBase
-        *
-        * @param name
-        * @param server
-        * @param port
-        * @param contextPath
-        * @param nomenclaturalCode
-        */
-       public CdmRemoteSourceBase(String name, String server, int port, String contextPath, NomenclaturalCode nomenclaturalCode) {
-               setName(name);
-               setServer(server);
-               setPort(port);
-               setContextPath(contextPath);
-               setNomenclaturalCode(nomenclaturalCode);
-               initDatabaseConnection();
-       }
-
-       protected void initDatabaseConnection() {
-               if(getContextPath() == null || getContextPath().equals("")) {
-                       setBaseUrl("http://" + getServer() + ":" + String.valueOf(getPort()));
-               } else {
-                       setBaseUrl("http://" + getServer()  + ":" + String.valueOf(getPort()) + "/" + getContextPath());
-               }
-               // the database service needs to be initialised (before the spring
-               // application context initialsation) since it is required to
-               // to make queries related to the source database
-           HttpInvokerProxyFactoryBean proxy = new HttpInvokerProxyFactoryBean();
-           proxy.setServiceInterface(IDatabaseService.class);
-           proxy.setServiceUrl(baseUrl + "/remoting/database.service");
-           proxy.afterPropertiesSet();
-           databaseService = (IDatabaseService) proxy.getObject();
-
-       }
-
-       /* (non-Javadoc)
-        * @see eu.etaxonomy.cdm.remote.ICdmRemoteSource#getBaseUrl()
-        */
-       @Override
-       public String getBaseUrl() {
-               return baseUrl;
-       }
-
-       /**
-        * Sets the base url for the http-invoker services as listed in
-        * httpInvokerServicesClients.xml.
-        * e.g. for 'http://127.0.0.1:8080/col/remoting/common.service', the
-        * base url would be 'http://127.0.0.1:8080/col'
-        *
-        * @param baseUrl
-        */
-       public void setBaseUrl(String baseUrl) {
-               this.baseUrl = baseUrl;
-       }
-
-       /* (non-Javadoc)
-        * @see eu.etaxonomy.cdm.remote.ICdmRemoteSource#getContextPath()
-        */
-       @Override
-       public String getContextPath() {
-               return contextPath;
-       }
-
-       /**
-        * Sets the context path.
-        * e.g. for 'http://127.0.0.1:8080/col/remoting/common.service', the
-        * context path would be 'col'
-        *
-        * @param contextPath
-        */
-       public void setContextPath(String contextPath) {
-               this.contextPath = contextPath;
-       }
-
-       /* (non-Javadoc)
-        * @see eu.etaxonomy.cdm.config.CdmSource#getDbSchemaVersion()
-        */
-       @Override
-       public String getDbSchemaVersion() throws CdmSourceException {
-               return databaseService.getDbSchemaVersion();
-
-       }
-
-       /* (non-Javadoc)
-        * @see eu.etaxonomy.cdm.config.CdmSource#isDbEmpty()
-        */
-       @Override
-       public boolean isDbEmpty() throws CdmSourceException {
-               return databaseService.isDbEmpty();
-
-       }
-
-       /* (non-Javadoc)
-        * @see eu.etaxonomy.cdm.config.CdmSource#checkConnection()
-        */
-       @Override
-       public boolean checkConnection() throws CdmSourceException {
-               // assuming that database service works implies
-               // the connection is up
-               // if no exception is thrown then we assume that the
-               // connection is up
-               // FIXME:Remoting is this really correct?
-               databaseService.getDbSchemaVersion();
-
-               return true;
-       }
-
-       /* (non-Javadoc)
-        * @see eu.etaxonomy.cdm.config.CdmSource#getConnectionMessage()
-        */
-       @Override
-       public String getConnectionMessage() {
-               return "Conncting to Remote CDM Server " + getName();
-       }
-
-
-       @Override
-       public Map<MetaDataPropertyName, String> getMetaDataMap() throws CdmSourceException {
-               return databaseService.getCdmMetadataMap();
-       }
-
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceException.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/CdmRemoteSourceException.java
deleted file mode 100644 (file)
index 3c2d715..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-/**
- * 
- */
-package eu.etaxonomy.cdm.remote;
-
-/**
- * 
- *
- */
-public class CdmRemoteSourceException extends Exception {
-       
-       public CdmRemoteSourceException(String message) {
-               super(message);
-       }
-
-       public CdmRemoteSourceException(Exception e) {
-               super(e);
-       }
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/ICdmRemoteSource.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/cdm/remote/ICdmRemoteSource.java
deleted file mode 100644 (file)
index f278c74..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
-* Copyright (C) 2014 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.cdm.remote;
-
-import eu.etaxonomy.cdm.config.ICdmSource;
-
-/**
- * Interface representing a CDM remote source
- *
- */
-public interface ICdmRemoteSource extends ICdmSource {
-       
-       /**
-        * Gets the context path.
-        * e.g. for 'http://127.0.0.1:8080/col/remoting/common.service', the 
-        * context path would be 'col'
-        */
-       public String getContextPath();
-       
-       /**
-        * Gets the base url for the http-invoker services as listed in 
-        * httpInvokerServicesClients.xml.
-        * e.g. for 'http://127.0.0.1:8080/col/remoting/common.service', the 
-        * base url would be 'http://127.0.0.1:8080/col'
-        */
-       public String getBaseUrl();     
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/taxeditor/remoting/RemotingTestPluginActivator.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/eu/etaxonomy/taxeditor/remoting/RemotingTestPluginActivator.java
deleted file mode 100644 (file)
index 65db6ba..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-package eu.etaxonomy.taxeditor.remoting;
-
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-
-public class RemotingTestPluginActivator implements BundleActivator {
-
-       private static BundleContext context;
-
-       static BundleContext getContext() {
-               return context;
-       }
-
-       /*
-        * (non-Javadoc)
-        * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
-        */
-       public void start(BundleContext bundleContext) throws Exception {
-               RemotingTestPluginActivator.context = bundleContext;
-       }
-
-       /*
-        * (non-Javadoc)
-        * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
-        */
-       public void stop(BundleContext bundleContext) throws Exception {
-               RemotingTestPluginActivator.context = null;
-       }
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/org/hibernate/collection/internal/AbstractPersistentCollection.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/org/hibernate/collection/internal/AbstractPersistentCollection.java
deleted file mode 100644 (file)
index e684103..0000000
+++ /dev/null
@@ -1,1369 +0,0 @@
-
-
-/*
- * Hibernate, Relational Persistence for Idiomatic Java
- *
- * Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
- * indicated by the @author tags or express copyright attribution
- * statements applied by the authors.  All third-party contributions are
- * distributed under license by Red Hat Inc.
- *
- * This copyrighted material is made available to anyone wishing to use, modify,
- * copy, or redistribute it subject to the terms and conditions of the GNU
- * Lesser General Public License, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this distribution; if not, write to:
- * Free Software Foundation, Inc.
- * 51 Franklin Street, Fifth Floor
- * Boston, MA  02110-1301  USA
- */
-package org.hibernate.collection.internal;
-
-import java.io.Serializable;
-import java.lang.reflect.Field;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.ListIterator;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeMap;
-import java.util.TreeSet;
-
-import javax.naming.NamingException;
-
-import org.hibernate.AssertionFailure;
-import org.hibernate.HibernateException;
-import org.hibernate.LazyInitializationException;
-import org.hibernate.Session;
-import org.hibernate.collection.spi.PersistentCollection;
-import org.hibernate.engine.internal.ForeignKeys;
-import org.hibernate.engine.spi.CollectionEntry;
-import org.hibernate.engine.spi.EntityEntry;
-import org.hibernate.engine.spi.SessionFactoryImplementor;
-import org.hibernate.engine.spi.SessionImplementor;
-import org.hibernate.engine.spi.Status;
-import org.hibernate.engine.spi.TypedValue;
-import org.hibernate.internal.SessionFactoryRegistry;
-import org.hibernate.internal.util.MarkerObject;
-import org.hibernate.internal.util.collections.EmptyIterator;
-import org.hibernate.internal.util.collections.IdentitySet;
-import org.hibernate.persister.collection.CollectionPersister;
-import org.hibernate.persister.entity.EntityPersister;
-import org.hibernate.pretty.MessageHelper;
-import org.hibernate.type.Type;
-import org.jboss.logging.Logger;
-
-import eu.etaxonomy.cdm.api.application.CdmApplicationRemoteController;
-import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
-import eu.etaxonomy.cdm.api.service.ICommonService;
-import eu.etaxonomy.cdm.model.common.PersistentMultiLanguageText;
-
-/**
- * Base class implementing {@link org.hibernate.collection.spi.PersistentCollection}
- *
- * @author Gavin King
- */
-public abstract class AbstractPersistentCollection implements Serializable, PersistentCollection {
-       private static final Logger log = Logger.getLogger( AbstractPersistentCollection.class );
-
-       private static final long serialVersionUID = -7238232378593030571L;
-       
-       private transient SessionImplementor session;
-       private boolean initialized;
-       private transient List<DelayedOperation> operationQueue;
-       private transient boolean directlyAccessible;
-       private transient boolean initializing;
-       private Object owner;
-       private int cachedSize = -1;
-
-       private String role;
-       private Serializable key;
-       // collections detect changes made via their public interface and mark
-       // themselves as dirty as a performance optimization
-       private boolean dirty;
-       private Serializable storedSnapshot;
-
-       private String sessionFactoryUuid;
-       private boolean specjLazyLoad = false;
-
-       public final String getRole() {
-               return role;
-       }
-
-       public final Serializable getKey() {
-               return key;
-       }
-
-       public final boolean isUnreferenced() {
-               return role == null;
-       }
-
-       public final boolean isDirty() {
-               return dirty;
-       }
-
-       public final void clearDirty() {
-               dirty = false;
-       }
-
-       public final void dirty() {
-               dirty = true;
-       }
-
-       public final Serializable getStoredSnapshot() {
-               return storedSnapshot;
-       }
-
-       //Careful: these methods do not initialize the collection.
-
-       /**
-        * Is the initialized collection empty?
-        */
-       public abstract boolean empty();
-
-       /**
-        * Called by any read-only method of the collection interface
-        */
-       protected final void read() {
-               initialize( false );
-       }
-
-       /**
-        * Called by the {@link Collection#size} method
-        */
-       @SuppressWarnings({"JavaDoc"})
-       protected boolean readSize() {
-               if ( !initialized ) {
-                       if ( cachedSize != -1 && !hasQueuedOperations() ) {
-                               return true;
-                       }
-                       else {
-                               // In remoting we are sure that session is null
-                               // both when using property paths and switching off conversations
-                               if(session == null && remoting) {                               
-                                       log.info("--> readSize, of " + getRole() + " with key " + getKey());
-                                       read();                                                         
-                               } else {
-                                       boolean isExtraLazy = withTemporarySessionIfNeeded(
-                                                       new LazyInitializationWork<Boolean>() {
-                                                               @Override
-                                                               public Boolean doWork() {
-                                                                       CollectionEntry entry = session.getPersistenceContext().getCollectionEntry( AbstractPersistentCollection.this );
-
-                                                                       if ( entry != null ) {
-                                                                               CollectionPersister persister = entry.getLoadedPersister();
-                                                                               if ( persister.isExtraLazy() ) {
-                                                                                       if ( hasQueuedOperations() ) {
-                                                                                               session.flush();
-                                                                                       }
-                                                                                       cachedSize = persister.getSize( entry.getLoadedKey(), session );
-                                                                                       return true;
-                                                                               }
-                                                                               else {
-                                                                                       read();
-                                                                               }
-                                                                       }
-                                                                       else{
-                                                                               throwLazyInitializationExceptionIfNotConnected();
-                                                                       }
-                                                                       return false;
-                                                               }
-                                                       }
-                                                       );
-                                       if ( isExtraLazy ) {
-                                               return true;
-                                       }
-                               }
-                       }
-               }
-               return false;
-       }
-
-       public static interface LazyInitializationWork<T> {
-               public T doWork();
-       }
-
-       private <T> T withTemporarySessionIfNeeded(LazyInitializationWork<T> lazyInitializationWork) {
-               SessionImplementor originalSession = null;
-               boolean isTempSession = false;
-               boolean isJTA = false;
-
-               if ( session == null ) {
-                       if ( specjLazyLoad ) {
-                               session = openTemporarySessionForLoading();
-                               isTempSession = true;
-                       }
-                       else {
-                               throwLazyInitializationException( "could not initialize proxy - no Session" );
-                       }
-               }
-               else if ( !session.isOpen() ) {
-                       if ( specjLazyLoad ) {
-                               originalSession = session;
-                               session = openTemporarySessionForLoading();
-                               isTempSession = true;
-                       }
-                       else {
-                               throwLazyInitializationException( "could not initialize proxy - the owning Session was closed" );
-                       }
-               }
-               else if ( !session.isConnected() ) {
-                       if ( specjLazyLoad ) {
-                               originalSession = session;
-                               session = openTemporarySessionForLoading();
-                               isTempSession = true;
-                       }
-                       else {
-                               throwLazyInitializationException( "could not initialize proxy - the owning Session is disconnected" );
-                       }
-               }
-
-               if ( isTempSession ) {
-                       // TODO: On the next major release, add an
-                       // 'isJTA' or 'getTransactionFactory' method to Session.
-                       isJTA = session.getTransactionCoordinator()
-                                       .getTransactionContext().getTransactionEnvironment()
-                                       .getTransactionFactory()
-                                       .compatibleWithJtaSynchronization();
-                       
-                       if ( !isJTA ) {
-                               // Explicitly handle the transactions only if we're not in
-                               // a JTA environment.  A lazy loading temporary session can
-                               // be created even if a current session and transaction are
-                               // open (ex: session.clear() was used).  We must prevent
-                               // multiple transactions.
-                               ( ( Session) session ).beginTransaction();
-                       }
-                       
-                       session.getPersistenceContext().addUninitializedDetachedCollection(
-                                       session.getFactory().getCollectionPersister( getRole() ),
-                                       this
-                       );
-               }
-
-               try {
-                       return lazyInitializationWork.doWork();
-               }
-               finally {
-                       if ( isTempSession ) {
-                               // make sure the just opened temp session gets closed!
-                               try {
-                                       if ( !isJTA ) {
-                                               ( ( Session) session ).getTransaction().commit();
-                                       }
-                                       ( (Session) session ).close();
-                               }
-                               catch (Exception e) {
-                                       log.warn( "Unable to close temporary session used to load lazy collection associated to no session" );
-                               }
-                               session = originalSession;
-                       }
-               }
-       }
-
-       private SessionImplementor openTemporarySessionForLoading() {
-               if ( sessionFactoryUuid == null ) {
-                       throwLazyInitializationException( "SessionFactory UUID not known to create temporary Session for loading" );
-               }
-
-               SessionFactoryImplementor sf = (SessionFactoryImplementor)
-                               SessionFactoryRegistry.INSTANCE.getSessionFactory( sessionFactoryUuid );
-               return (SessionImplementor) sf.openSession();
-       }
-
-       protected Boolean readIndexExistence(final Object index) {
-               if ( !initialized ) {
-                       // In remoting we are sure that session is null
-                       // both when using property paths and switching off conversations
-                       if(session == null && remoting) {                       
-                               log.info("--> readIndexExistence, of " + getRole() + " with key " + getKey());
-                               read();                                                                         
-                       } else {
-                               Boolean extraLazyExistenceCheck = withTemporarySessionIfNeeded(
-                                               new LazyInitializationWork<Boolean>() {
-                                                       @Override
-                                                       public Boolean doWork() {
-                                                               CollectionEntry entry = session.getPersistenceContext().getCollectionEntry( AbstractPersistentCollection.this );
-                                                               CollectionPersister persister = entry.getLoadedPersister();
-                                                               if ( persister.isExtraLazy() ) {
-                                                                       if ( hasQueuedOperations() ) {
-                                                                               session.flush();
-                                                                       }
-                                                                       return persister.indexExists( entry.getLoadedKey(), index, session );
-                                                               }
-                                                               else {
-                                                                       read();
-                                                               }
-                                                               return null;
-                                                       }
-                                               }
-                                               );
-                               if ( extraLazyExistenceCheck != null ) {
-                                       return extraLazyExistenceCheck;
-                               }
-                       }
-               }
-               return null;
-       }
-
-       protected Boolean readElementExistence(final Object element) {
-               if ( !initialized ) {
-                       // In remoting we are sure that session is null
-                       // both when using property paths and switching off conversations
-                       if(session == null && remoting) {
-                               log.info("--> readElementExistence, of " + getRole() + " with key " + getKey());
-                               read();                         
-                               
-                       } else {
-                               Boolean extraLazyExistenceCheck = withTemporarySessionIfNeeded(
-                                               new LazyInitializationWork<Boolean>() {
-                                                       @Override
-                                                       public Boolean doWork() {
-                                                               CollectionEntry entry = session.getPersistenceContext().getCollectionEntry( AbstractPersistentCollection.this );
-                                                               CollectionPersister persister = entry.getLoadedPersister();
-                                                               if ( persister.isExtraLazy() ) {
-                                                                       if ( hasQueuedOperations() ) {
-                                                                               session.flush();
-                                                                       }
-                                                                       return persister.elementExists( entry.getLoadedKey(), element, session );
-                                                               }
-                                                               else {
-                                                                       read();
-                                                               }
-                                                               return null;
-                                                       }
-                                               }
-                                               );
-                               if ( extraLazyExistenceCheck != null ) {
-                                       return extraLazyExistenceCheck;
-                               }
-                       }
-               }
-               return null;
-       }
-
-       protected static final Object UNKNOWN = new MarkerObject( "UNKNOWN" );
-
-       protected Object readElementByIndex(final Object index) {
-               if ( !initialized ) {
-                       // In remoting we are sure that session is null
-                       // both when using property paths and switching off conversations
-                       if(session == null && remoting) {                               
-                               log.info("--> readElementByIndex, of " + getRole() + " with key " + getKey());
-                               read();                         
-                               
-                       } else {
-                               class ExtraLazyElementByIndexReader implements LazyInitializationWork {
-                                       private boolean isExtraLazy;
-                                       private Object element;
-
-                                       @Override
-                                       public Object doWork() {
-                                               CollectionEntry entry = session.getPersistenceContext().getCollectionEntry( AbstractPersistentCollection.this );
-                                               CollectionPersister persister = entry.getLoadedPersister();
-                                               isExtraLazy = persister.isExtraLazy();
-                                               if ( isExtraLazy ) {
-                                                       if ( hasQueuedOperations() ) {
-                                                               session.flush();
-                                                       }
-                                                       element = persister.getElementByIndex( entry.getLoadedKey(), index, session, owner );
-                                               }
-                                               else {
-                                                       read();
-                                               }
-                                               return null;
-                                       }
-                               }
-
-                               ExtraLazyElementByIndexReader reader = new ExtraLazyElementByIndexReader();
-                               //noinspection unchecked
-                               withTemporarySessionIfNeeded( reader );
-                               if ( reader.isExtraLazy ) {
-                                       return reader.element;
-                               }
-                       }
-               }
-               return UNKNOWN;
-
-       }
-
-       protected int getCachedSize() {
-               return cachedSize;
-       }
-
-       private boolean isConnectedToSession() {
-               return session != null &&
-                               session.isOpen() &&
-                               session.getPersistenceContext().containsCollection( this );
-       }
-
-       /**
-        * Called by any writer method of the collection interface
-        */
-       protected final void write() {
-               initialize( true );
-               dirty();
-       }
-
-       /**
-        * Is this collection in a state that would allow us to
-        * "queue" operations?
-        */
-       @SuppressWarnings({"JavaDoc"})
-       protected boolean isOperationQueueEnabled() {
-               return !initialized &&
-                               isConnectedToSession() &&
-                               isInverseCollection();
-       }
-
-       /**
-        * Is this collection in a state that would allow us to
-        * "queue" puts? This is a special case, because of orphan
-        * delete.
-        */
-       @SuppressWarnings({"JavaDoc"})
-       protected boolean isPutQueueEnabled() {
-               return !initialized &&
-                               isConnectedToSession() &&
-                               isInverseOneToManyOrNoOrphanDelete();
-       }
-
-       /**
-        * Is this collection in a state that would allow us to
-        * "queue" clear? This is a special case, because of orphan
-        * delete.
-        */
-       @SuppressWarnings({"JavaDoc"})
-       protected boolean isClearQueueEnabled() {
-               return !initialized &&
-                               isConnectedToSession() &&
-                               isInverseCollectionNoOrphanDelete();
-       }
-
-       /**
-        * Is this the "inverse" end of a bidirectional association?
-        */
-       @SuppressWarnings({"JavaDoc"})
-       private boolean isInverseCollection() {
-               CollectionEntry ce = session.getPersistenceContext().getCollectionEntry( this );
-               return ce != null && ce.getLoadedPersister().isInverse();
-       }
-
-       /**
-        * Is this the "inverse" end of a bidirectional association with
-        * no orphan delete enabled?
-        */
-       @SuppressWarnings({"JavaDoc"})
-       private boolean isInverseCollectionNoOrphanDelete() {
-               CollectionEntry ce = session.getPersistenceContext().getCollectionEntry( this );
-               return ce != null &&
-                               ce.getLoadedPersister().isInverse() &&
-                               !ce.getLoadedPersister().hasOrphanDelete();
-       }
-
-       /**
-        * Is this the "inverse" end of a bidirectional one-to-many, or
-        * of a collection with no orphan delete?
-        */
-       @SuppressWarnings({"JavaDoc"})
-       private boolean isInverseOneToManyOrNoOrphanDelete() {
-               CollectionEntry ce = session.getPersistenceContext().getCollectionEntry( this );
-               return ce != null && ce.getLoadedPersister().isInverse() && (
-                               ce.getLoadedPersister().isOneToMany() ||
-                                               !ce.getLoadedPersister().hasOrphanDelete()
-               );
-       }
-
-       /**
-        * Queue an addition
-        */
-       @SuppressWarnings({"JavaDoc"})
-       protected final void queueOperation(DelayedOperation operation) {
-               if ( operationQueue == null ) {
-                       operationQueue = new ArrayList<DelayedOperation>( 10 );
-               }
-               operationQueue.add( operation );
-               dirty = true; //needed so that we remove this collection from the second-level cache
-       }
-
-       /**
-        * After reading all existing elements from the database,
-        * add the queued elements to the underlying collection.
-        */
-       protected final void performQueuedOperations() {
-               for ( DelayedOperation operation : operationQueue ) {
-                       operation.operate();
-               }
-       }
-
-       /**
-        * After flushing, re-init snapshot state.
-        */
-       public void setSnapshot(Serializable key, String role, Serializable snapshot) {
-               this.key = key;
-               this.role = role;
-               this.storedSnapshot = snapshot;
-       }
-
-       /**
-        * After flushing, clear any "queued" additions, since the
-        * database state is now synchronized with the memory state.
-        */
-       public void postAction() {
-               operationQueue = null;
-               cachedSize = -1;
-               clearDirty();
-       }
-
-       /**
-        * Not called by Hibernate, but used by non-JDK serialization,
-        * eg. SOAP libraries.
-        */
-       public AbstractPersistentCollection() {
-       }
-
-       protected AbstractPersistentCollection(SessionImplementor session) {
-               this.session = session;
-       }
-
-       /**
-        * return the user-visible collection (or array) instance
-        */
-       public Object getValue() {
-               return this;
-       }
-
-       /**
-        * Called just before reading any rows from the JDBC result set
-        */
-       public void beginRead() {
-               // override on some subclasses
-               initializing = true;
-       }
-
-       /**
-        * Called after reading all rows from the JDBC result set
-        */
-       public boolean endRead() {
-               //override on some subclasses
-               return afterInitialize();
-       }
-
-       public boolean afterInitialize() {
-               setInitialized();
-               //do this bit after setting initialized to true or it will recurse
-               if ( operationQueue != null ) {
-                       performQueuedOperations();
-                       operationQueue = null;
-                       cachedSize = -1;
-                       return false;
-               }
-               else {
-                       return true;
-               }
-       }
-
-       /**
-        * Initialize the collection, if possible, wrapping any exceptions
-        * in a runtime exception
-        *
-        * @param writing currently obsolete
-        *
-        * @throws LazyInitializationException if we cannot initialize
-        */
-       protected final void initialize(final boolean writing) {
-               // In remoting we are sure that session is null
-               // both when using property paths and switching off conversations
-               if(session == null && remoting) {
-                       remoteInitialize();                     
-               }
-               
-               if ( initialized ) {
-                       return;
-               }
-
-               
-               withTemporarySessionIfNeeded(
-                               new LazyInitializationWork<Object>() {
-                                       @Override
-                                       public Object doWork() {
-                                               session.initializeCollection( AbstractPersistentCollection.this, writing );
-                                               return null;
-                                       }
-                               }
-               );
-       }
-
-       private void throwLazyInitializationExceptionIfNotConnected() {
-               if ( !isConnectedToSession() ) {
-                       throwLazyInitializationException( "no session or session was closed" );
-               }
-               if ( !session.isConnected() ) {
-                       throwLazyInitializationException( "session is disconnected" );
-               }
-       }
-
-       private void throwLazyInitializationException(String message) {
-               throw new LazyInitializationException(
-                               "failed to lazily initialize a collection" +
-                                               (role == null ? "" : " of role: " + role) +
-                                               ", " + message
-               );
-       }
-
-       protected final void setInitialized() {
-               this.initializing = false;
-               this.initialized = true;
-       }
-
-       protected final void setDirectlyAccessible(boolean directlyAccessible) {
-               this.directlyAccessible = directlyAccessible;
-       }
-
-       /**
-        * Could the application possibly have a direct reference to
-        * the underlying collection implementation?
-        */
-       public boolean isDirectlyAccessible() {
-               return directlyAccessible;
-       }
-
-       /**
-        * Disassociate this collection from the given session.
-        *
-        * @return true if this was currently associated with the given session
-        */
-       public final boolean unsetSession(SessionImplementor currentSession) {
-               prepareForPossibleSpecialSpecjInitialization();
-               if ( currentSession == this.session ) {
-                       this.session = null;
-                       return true;
-               }
-               else {
-                       return false;
-               }
-       }
-
-       protected void prepareForPossibleSpecialSpecjInitialization() {
-               if ( session != null ) {
-                       specjLazyLoad = session.getFactory().getSettings().isInitializeLazyStateOutsideTransactionsEnabled();
-
-                       if ( specjLazyLoad && sessionFactoryUuid == null ) {
-                               try {
-                                       sessionFactoryUuid = (String) session.getFactory().getReference().get( "uuid" ).getContent();
-                               }
-                               catch (NamingException e) {
-                                       //not much we can do if this fails...
-                               }
-                       }
-               }
-       }
-
-
-       /**
-        * Associate the collection with the given session.
-        *
-        * @return false if the collection was already associated with the session
-        *
-        * @throws HibernateException if the collection was already associated
-        * with another open session
-        */
-       public final boolean setCurrentSession(SessionImplementor session) throws HibernateException {
-               if ( session == this.session ) {
-                       return false;
-               }
-               else {
-                       if ( isConnectedToSession() ) {
-                               CollectionEntry ce = session.getPersistenceContext().getCollectionEntry( this );
-                               if ( ce == null ) {
-                                       throw new HibernateException(
-                                                       "Illegal attempt to associate a collection with two open sessions"
-                                       );
-                               }
-                               else {
-                                       throw new HibernateException(
-                                                       "Illegal attempt to associate a collection with two open sessions: " +
-                                                                       MessageHelper.collectionInfoString(
-                                                                                       ce.getLoadedPersister(), this,
-                                                                                       ce.getLoadedKey(), session
-                                                                       )
-                                       );
-                               }
-                       }
-                       else {
-                               this.session = session;
-                               return true;
-                       }
-               }
-       }
-
-       /**
-        * Do we need to completely recreate this collection when it changes?
-        */
-       public boolean needsRecreate(CollectionPersister persister) {
-               return false;
-       }
-
-       /**
-        * To be called internally by the session, forcing
-        * immediate initialization.
-        */
-       public final void forceInitialization() throws HibernateException {
-               if ( !initialized ) {
-                       if ( initializing ) {
-                               throw new AssertionFailure( "force initialize loading collection" );
-                       }
-                       if ( session == null ) {
-                               throw new HibernateException( "collection is not associated with any session" );
-                       }
-                       if ( !session.isConnected() ) {
-                               throw new HibernateException( "disconnected session" );
-                       }
-                       session.initializeCollection( this, false );
-               }
-       }
-
-
-       /**
-        * Get the current snapshot from the session
-        */
-       @SuppressWarnings({"JavaDoc"})
-       protected final Serializable getSnapshot() {
-               return session.getPersistenceContext().getSnapshot( this );
-       }
-
-       /**
-        * Is this instance initialized?
-        */
-       public final boolean wasInitialized() {
-               return initialized;
-       }
-
-       public boolean isRowUpdatePossible() {
-               return true;
-       }
-
-       /**
-        * Does this instance have any "queued" additions?
-        */
-       public final boolean hasQueuedOperations() {
-               return operationQueue != null;
-       }
-
-       /**
-        * Iterate the "queued" additions
-        */
-       public final Iterator queuedAdditionIterator() {
-               if ( hasQueuedOperations() ) {
-                       return new Iterator() {
-                               int i = 0;
-
-                               public Object next() {
-                                       return operationQueue.get( i++ ).getAddedInstance();
-                               }
-
-                               public boolean hasNext() {
-                                       return i < operationQueue.size();
-                               }
-
-                               public void remove() {
-                                       throw new UnsupportedOperationException();
-                               }
-                       };
-               }
-               else {
-                       return EmptyIterator.INSTANCE;
-               }
-       }
-
-       /**
-        * Iterate the "queued" additions
-        */
-       @SuppressWarnings({"unchecked"})
-       public final Collection getQueuedOrphans(String entityName) {
-               if ( hasQueuedOperations() ) {
-                       Collection additions = new ArrayList( operationQueue.size() );
-                       Collection removals = new ArrayList( operationQueue.size() );
-                       for ( DelayedOperation operation : operationQueue ) {
-                               additions.add( operation.getAddedInstance() );
-                               removals.add( operation.getOrphan() );
-                       }
-                       return getOrphans( removals, additions, entityName, session );
-               }
-               else {
-                       return Collections.EMPTY_LIST;
-               }
-       }
-
-       /**
-        * Called before inserting rows, to ensure that any surrogate keys
-        * are fully generated
-        */
-       public void preInsert(CollectionPersister persister) throws HibernateException {
-       }
-
-       /**
-        * Called after inserting a row, to fetch the natively generated id
-        */
-       public void afterRowInsert(CollectionPersister persister, Object entry, int i) throws HibernateException {
-       }
-
-       /**
-        * get all "orphaned" elements
-        */
-       public abstract Collection getOrphans(Serializable snapshot, String entityName) throws HibernateException;
-
-       /**
-        * Get the current session
-        */
-       @SuppressWarnings({"JavaDoc"})
-       public final SessionImplementor getSession() {
-               return session;
-       }
-
-       protected final class IteratorProxy implements Iterator {
-               protected final Iterator itr;
-
-               public IteratorProxy(Iterator itr) {
-                       this.itr = itr;
-               }
-
-               public boolean hasNext() {
-                       return itr.hasNext();
-               }
-
-               public Object next() {
-                       return itr.next();
-               }
-
-               public void remove() {
-                       write();
-                       itr.remove();
-               }
-
-       }
-
-       protected final class ListIteratorProxy implements ListIterator {
-               protected final ListIterator itr;
-
-               public ListIteratorProxy(ListIterator itr) {
-                       this.itr = itr;
-               }
-
-               @SuppressWarnings({"unchecked"})
-               public void add(Object o) {
-                       write();
-                       itr.add( o );
-               }
-
-               public boolean hasNext() {
-                       return itr.hasNext();
-               }
-
-               public boolean hasPrevious() {
-                       return itr.hasPrevious();
-               }
-
-               public Object next() {
-                       return itr.next();
-               }
-
-               public int nextIndex() {
-                       return itr.nextIndex();
-               }
-
-               public Object previous() {
-                       return itr.previous();
-               }
-
-               public int previousIndex() {
-                       return itr.previousIndex();
-               }
-
-               public void remove() {
-                       write();
-                       itr.remove();
-               }
-
-               @SuppressWarnings({"unchecked"})
-               public void set(Object o) {
-                       write();
-                       itr.set( o );
-               }
-
-       }
-
-       protected class SetProxy implements java.util.Set {
-               protected final Collection set;
-
-               public SetProxy(Collection set) {
-                       this.set = set;
-               }
-
-               @SuppressWarnings({"unchecked"})
-               public boolean add(Object o) {
-                       write();
-                       return set.add( o );
-               }
-
-               @SuppressWarnings({"unchecked"})
-               public boolean addAll(Collection c) {
-                       write();
-                       return set.addAll( c );
-               }
-
-               public void clear() {
-                       write();
-                       set.clear();
-               }
-
-               public boolean contains(Object o) {
-                       return set.contains( o );
-               }
-
-               public boolean containsAll(Collection c) {
-                       return set.containsAll( c );
-               }
-
-               public boolean isEmpty() {
-                       return set.isEmpty();
-               }
-
-               public Iterator iterator() {
-                       return new IteratorProxy( set.iterator() );
-               }
-
-               public boolean remove(Object o) {
-                       write();
-                       return set.remove( o );
-               }
-
-               public boolean removeAll(Collection c) {
-                       write();
-                       return set.removeAll( c );
-               }
-
-               public boolean retainAll(Collection c) {
-                       write();
-                       return set.retainAll( c );
-               }
-
-               public int size() {
-                       return set.size();
-               }
-
-               public Object[] toArray() {
-                       return set.toArray();
-               }
-
-               @SuppressWarnings({"unchecked"})
-               public Object[] toArray(Object[] array) {
-                       return set.toArray( array );
-               }
-
-       }
-
-       protected final class ListProxy implements java.util.List {
-               protected final List list;
-
-               public ListProxy(List list) {
-                       this.list = list;
-               }
-
-               @Override
-               @SuppressWarnings({"unchecked"})
-               public void add(int index, Object value) {
-                       write();
-                       list.add( index, value );
-               }
-
-               @Override
-               @SuppressWarnings({"unchecked"})
-               public boolean add(Object o) {
-                       write();
-                       return list.add( o );
-               }
-
-               @Override
-               @SuppressWarnings({"unchecked"})
-               public boolean addAll(Collection c) {
-                       write();
-                       return list.addAll( c );
-               }
-
-               @Override
-               @SuppressWarnings({"unchecked"})
-               public boolean addAll(int i, Collection c) {
-                       write();
-                       return list.addAll( i, c );
-               }
-
-               @Override
-               public void clear() {
-                       write();
-                       list.clear();
-               }
-
-               @Override
-               public boolean contains(Object o) {
-                       return list.contains( o );
-               }
-
-               @Override
-               public boolean containsAll(Collection c) {
-                       return list.containsAll( c );
-               }
-
-               @Override
-               public Object get(int i) {
-                       return list.get( i );
-               }
-
-               @Override
-               public int indexOf(Object o) {
-                       return list.indexOf( o );
-               }
-
-               @Override
-               public boolean isEmpty() {
-                       return list.isEmpty();
-               }
-
-               @Override
-               public Iterator iterator() {
-                       return new IteratorProxy( list.iterator() );
-               }
-
-               @Override
-               public int lastIndexOf(Object o) {
-                       return list.lastIndexOf( o );
-               }
-
-               @Override
-               public ListIterator listIterator() {
-                       return new ListIteratorProxy( list.listIterator() );
-               }
-
-               @Override
-               public ListIterator listIterator(int i) {
-                       return new ListIteratorProxy( list.listIterator( i ) );
-               }
-
-               @Override
-               public Object remove(int i) {
-                       write();
-                       return list.remove( i );
-               }
-
-               @Override
-               public boolean remove(Object o) {
-                       write();
-                       return list.remove( o );
-               }
-
-               @Override
-               public boolean removeAll(Collection c) {
-                       write();
-                       return list.removeAll( c );
-               }
-
-               @Override
-               public boolean retainAll(Collection c) {
-                       write();
-                       return list.retainAll( c );
-               }
-
-               @Override
-               @SuppressWarnings({"unchecked"})
-               public Object set(int i, Object o) {
-                       write();
-                       return list.set( i, o );
-               }
-
-               @Override
-               public int size() {
-                       return list.size();
-               }
-
-               @Override
-               public List subList(int i, int j) {
-                       return list.subList( i, j );
-               }
-
-               @Override
-               public Object[] toArray() {
-                       return list.toArray();
-               }
-
-               @Override
-               @SuppressWarnings({"unchecked"})
-               public Object[] toArray(Object[] array) {
-                       return list.toArray( array );
-               }
-
-       }
-
-       /**
-        * Contract for operations which are part of a collection's operation queue.
-        */
-       protected interface DelayedOperation {
-               public void operate();
-
-               public Object getAddedInstance();
-
-               public Object getOrphan();
-       }
-
-       /**
-        * Given a collection of entity instances that used to
-        * belong to the collection, and a collection of instances
-        * that currently belong, return a collection of orphans
-        */
-       @SuppressWarnings({"JavaDoc", "unchecked"})
-       protected static Collection getOrphans(
-                       Collection oldElements,
-                       Collection currentElements,
-                       String entityName,
-                       SessionImplementor session) throws HibernateException {
-
-               // short-circuit(s)
-               if ( currentElements.size() == 0 ) {
-                       return oldElements; // no new elements, the old list contains only Orphans
-               }
-               if ( oldElements.size() == 0 ) {
-                       return oldElements; // no old elements, so no Orphans neither
-               }
-
-               final EntityPersister entityPersister = session.getFactory().getEntityPersister( entityName );
-               final Type idType = entityPersister.getIdentifierType();
-
-               // create the collection holding the Orphans
-               Collection res = new ArrayList();
-
-               // collect EntityIdentifier(s) of the *current* elements - add them into a HashSet for fast access
-               java.util.Set currentIds = new HashSet();
-               java.util.Set currentSaving = new IdentitySet();
-               for ( Object current : currentElements ) {
-                       if ( current != null && ForeignKeys.isNotTransient( entityName, current, null, session ) ) {
-                               EntityEntry ee = session.getPersistenceContext().getEntry( current );
-                               if ( ee != null && ee.getStatus() == Status.SAVING ) {
-                                       currentSaving.add( current );
-                               }
-                               else {
-                                       Serializable currentId = ForeignKeys.getEntityIdentifierIfNotUnsaved(
-                                                       entityName,
-                                                       current,
-                                                       session
-                                       );
-                                       currentIds.add( new TypedValue( idType, currentId, entityPersister.getEntityMode() ) );
-                               }
-                       }
-               }
-
-               // iterate over the *old* list
-               for ( Object old : oldElements ) {
-                       if ( !currentSaving.contains( old ) ) {
-                               Serializable oldId = ForeignKeys.getEntityIdentifierIfNotUnsaved( entityName, old, session );
-                               if ( !currentIds.contains( new TypedValue( idType, oldId, entityPersister.getEntityMode() ) ) ) {
-                                       res.add( old );
-                               }
-                       }
-               }
-
-               return res;
-       }
-
-       public static void identityRemove(
-                       Collection list,
-                       Object object,
-                       String entityName,
-                       SessionImplementor session) throws HibernateException {
-
-               if ( object != null && ForeignKeys.isNotTransient( entityName, object, null, session ) ) {
-                       final EntityPersister entityPersister = session.getFactory().getEntityPersister( entityName );
-                       Type idType = entityPersister.getIdentifierType();
-
-                       Serializable idOfCurrent = ForeignKeys.getEntityIdentifierIfNotUnsaved( entityName, object, session );
-                       Iterator itr = list.iterator();
-                       while ( itr.hasNext() ) {
-                               Serializable idOfOld = ForeignKeys.getEntityIdentifierIfNotUnsaved( entityName, itr.next(), session );
-                               if ( idType.isEqual( idOfCurrent, idOfOld, session.getFactory() ) ) {
-                                       itr.remove();
-                                       break;
-                               }
-                       }
-
-               }
-       }
-
-       public Object getIdentifier(Object entry, int i) {
-               throw new UnsupportedOperationException();
-       }
-
-       public Object getOwner() {
-               return owner;
-       }
-
-       public void setOwner(Object owner) {
-               this.owner = owner;
-       }
-
-       /** ------ Below is section of code which makes remote service calls ----- */
-       // The affected methods are : 
-       // initialize(final boolean writing)
-       // readSize()
-       // readIndexExistence(final Object index)
-       // readElementExistence(final Object element)
-       // readElementByIndex(final Object index) 
-       
-       private static ICdmApplicationConfiguration configuration;
-       private static boolean remoting = false;
-       
-       public static void setConfiguration(ICdmApplicationConfiguration conf) {
-               configuration = conf;
-                       
-               if(conf instanceof CdmApplicationRemoteController) {
-                       remoting = true;
-               } else {
-                       remoting = false;
-               }
-       }
-       
-       
-       private void remoteInitialize() {
-               
-               if (getOwner() != null && !initialized) {                       
-                       
-                       try {
-                               String role = getRole();
-                               String fieldName = role.substring(role.lastIndexOf(".") + 1);
-                               log.info("--> Remote Lazy Initializing " + getRole() + " , key : " + getKey() + " , field : " + fieldName);
-                               Object owner = getOwner();
-                               
-                               if(configuration == null) {
-                                       throw new HibernateException("CdmApplicationRemoteConfiguration not initialized (null)");
-                               }
-                               ICommonService commonService = configuration.getCommonService();
-                               if(commonService == null) {
-                                       throw new HibernateException("commonService not initialized (null)");
-                               }
-                               
-                               PersistentCollection col = commonService.initializeCollection(this); 
-                               afterInitialize();
-
-                               Class<?> clazz = getClass();
-                               if (clazz != null) {    
-                                       CollectionField cf = getCollectionField(col);
-                                       Field field = clazz.getDeclaredField(cf.getFieldName());
-                                       field.setAccessible(true);
-                                       field.set(this, cf.getCollection());                           
-                               }               
-                       } catch (Exception ex) {
-                               log.warn(ex.getMessage());
-                       }                       
-               }
-       }
-       
-       
-       private CollectionField getCollectionField(PersistentCollection pc) {
-               if(pc != null) {
-                       if(pc instanceof PersistentSet) {
-                               return new CollectionField(new HashSet((Set)pc), "set");
-                       }
-                       if(pc instanceof PersistentSortedSet) {
-                               return new CollectionField(new TreeSet((Set)pc), "set");
-                       }
-                       if(pc instanceof PersistentList) {
-                               return new CollectionField(new ArrayList((List)pc), "list");
-                       }
-                       if(pc instanceof PersistentMap || pc instanceof PersistentMultiLanguageText) {
-                               return new CollectionField(new HashMap((Map)pc), "map");
-                       }
-                       if(pc instanceof PersistentSortedMap) {
-                               return new CollectionField(new TreeMap((Map)pc), "map");
-                       }
-               }
-               return null;
-       }
-       
-       private String getCollectionFieldName(PersistentCollection pc) {
-               if(pc != null) {
-                       if(pc instanceof PersistentSet || pc instanceof PersistentSortedSet) {
-                               return "set";
-                       }                       
-                       if(pc instanceof PersistentList) {
-                               return "list";
-                       }
-                       if(pc instanceof PersistentMap || pc instanceof PersistentMultiLanguageText) {
-                               return "map";
-                       }
-               }
-               return null;
-       }
-       
-       private class CollectionField {
-               private Object col;
-               private String fieldName;
-               public CollectionField(Object col, String fieldName) {
-                       this.col = col;
-                       this.fieldName = fieldName;
-               }
-               
-               public Object getCollection() {
-                       return this.col;
-               }
-               
-               public String getFieldName() {
-                       return this.fieldName;
-               }
-       }
-       
-       public static boolean isInitialized(List list) {
-               return ((AbstractPersistentCollection)list).initialized;
-       }
-       
-       public static boolean isInitialized(Map map) {
-               return ((AbstractPersistentCollection)map).initialized;
-       }
-       
-       public static boolean isInitialized(Set set) {
-               return ((AbstractPersistentCollection)set).initialized;
-       }
-       
-       //FIXME:Remoting These methods may no longer be required since we are 
-       //               initialising collections as default behaviour
-       private int remoteSize() {
-               int size = configuration.getCommonService().size(this);
-               log.debug("--> Remote Lazy Initializing size of " + getRole() + " to " + size);
-               if(size == -1) {
-                       throw new HibernateException("size of " + getClass() + " could not be retrieved from remote service");
-               }
-               return size;
-       }
-       
-       private Object remoteReadElementByIndex(int index) {
-               Object element = configuration.getCommonService().get(this,index);
-               log.debug("--> Remote Lazy Initializing element from " + getRole() + " at index " + index);
-               return element;
-       }
-       
-       private boolean remoteReadElementExistence(Object element) {
-               return configuration.getCommonService().contains(this,element);
-       }
-       
-       private boolean remoteReadIndexExistence(Object index) {
-               return false;
-       }
-}
-
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/java/org/hibernate/proxy/AbstractLazyInitializer.java b/eu.etaxonomy.taxeditor.remoting/src/main/java/org/hibernate/proxy/AbstractLazyInitializer.java
deleted file mode 100644 (file)
index 86a7ed3..0000000
+++ /dev/null
@@ -1,463 +0,0 @@
-/*
- * Hibernate, Relational Persistence for Idiomatic Java
- *
- * Copyright (c) 2008-2011, Red Hat Inc. or third-party contributors as
- * indicated by the @author tags or express copyright attribution
- * statements applied by the authors.  All third-party contributions are
- * distributed under license by Red Hat Inc.
- *
- * This copyrighted material is made available to anyone wishing to use, modify,
- * copy, or redistribute it subject to the terms and conditions of the GNU
- * Lesser General Public License, as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
- * for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this distribution; if not, write to:
- * Free Software Foundation, Inc.
- * 51 Franklin Street, Fifth Floor
- * Boston, MA  02110-1301  USA
- */
-package org.hibernate.proxy;
-
-import java.io.Serializable;
-
-import javax.naming.NamingException;
-
-import org.hibernate.HibernateException;
-import org.hibernate.LazyInitializationException;
-import org.hibernate.Session;
-import org.hibernate.SessionException;
-import org.hibernate.TransientObjectException;
-import org.hibernate.engine.spi.EntityKey;
-import org.hibernate.engine.spi.SessionFactoryImplementor;
-import org.hibernate.engine.spi.SessionImplementor;
-import org.hibernate.internal.SessionFactoryRegistry;
-import org.hibernate.persister.entity.EntityPersister;
-import org.jboss.logging.Logger;
-
-import eu.etaxonomy.cdm.api.application.CdmApplicationRemoteController;
-import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
-import eu.etaxonomy.cdm.api.service.ICommonService;
-import eu.etaxonomy.cdm.model.common.CdmBase;
-
-/**
- * Convenience base class for lazy initialization handlers.  Centralizes the basic plumbing of doing lazy
- * initialization freeing subclasses to acts as essentially adapters to their intended entity mode and/or
- * proxy generation strategy.
- *
- * @author Gavin King
- */
-public abstract class AbstractLazyInitializer implements LazyInitializer {
-       private static final Logger log = Logger.getLogger( AbstractLazyInitializer.class );
-
-       private String entityName;
-       private Serializable id;
-       private Object target;
-       private boolean initialized;
-       private boolean readOnly;
-       private boolean unwrap;
-       private transient SessionImplementor session;
-       private Boolean readOnlyBeforeAttachedToSession;
-
-       private String sessionFactoryUuid;
-       private boolean specjLazyLoad = false;
-
-       /**
-        * For serialization from the non-pojo initializers (HHH-3309)
-        */
-       protected AbstractLazyInitializer() {
-       }
-
-       /**
-        * Main constructor.
-        *
-        * @param entityName The name of the entity being proxied.
-        * @param id The identifier of the entity being proxied.
-        * @param session The session owning the proxy.
-        */
-       protected AbstractLazyInitializer(String entityName, Serializable id, SessionImplementor session) {
-               this.entityName = entityName;
-               this.id = id;
-               // initialize other fields depending on session state
-               if ( session == null ) {
-                       unsetSession();
-               }
-               else {
-                       setSession( session );
-               }
-       }
-
-       @Override
-       public final String getEntityName() {
-               return entityName;
-       }
-
-       @Override
-       public final Serializable getIdentifier() {
-               return id;
-       }
-
-       @Override
-       public final void setIdentifier(Serializable id) {
-               this.id = id;
-       }
-
-       @Override
-       public final boolean isUninitialized() {
-               return !initialized;
-       }
-
-       @Override
-       public final SessionImplementor getSession() {
-               return session;
-       }
-
-       @Override
-       public final void setSession(SessionImplementor s) throws HibernateException {
-               if ( s != session ) {
-                       // check for s == null first, since it is least expensive
-                       if ( s == null ) {
-                               unsetSession();
-                       }
-                       else if ( isConnectedToSession() ) {
-                               //TODO: perhaps this should be some other RuntimeException...
-                               throw new HibernateException( "illegally attempted to associate a proxy with two open Sessions" );
-                       }
-                       else {
-                               // s != null
-                               session = s;
-                               if ( readOnlyBeforeAttachedToSession == null ) {
-                                       // use the default read-only/modifiable setting
-                                       final EntityPersister persister = s.getFactory().getEntityPersister( entityName );
-                                       setReadOnly( s.getPersistenceContext().isDefaultReadOnly() || !persister.isMutable() );
-                               }
-                               else {
-                                       // use the read-only/modifiable setting indicated during deserialization
-                                       setReadOnly( readOnlyBeforeAttachedToSession.booleanValue() );
-                                       readOnlyBeforeAttachedToSession = null;
-                               }
-                       }
-               }
-       }
-
-       private static EntityKey generateEntityKeyOrNull(Serializable id, SessionImplementor s, String entityName) {
-               if ( id == null || s == null || entityName == null ) {
-                       return null;
-               }
-               return s.generateEntityKey( id, s.getFactory().getEntityPersister( entityName ) );
-       }
-
-       @Override
-       public final void unsetSession() {
-               prepareForPossibleSpecialSpecjInitialization();
-               session = null;
-               readOnly = false;
-               readOnlyBeforeAttachedToSession = null;
-       }
-
-       @Override
-       public final void initialize() throws HibernateException {
-               // In remoting we are sure that session is null
-               // both when using property paths and switching off conversations
-               if(session == null && remoting) {
-                       remoteInitialize();
-               }
-               if ( !initialized ) {
-                       if ( specjLazyLoad ) {
-                               specialSpecjInitialization();
-                       }
-                       else if ( session == null ) {
-                               throw new LazyInitializationException( "could not initialize proxy - no Session" );
-                       }
-                       else if ( !session.isOpen() ) {
-                               throw new LazyInitializationException( "could not initialize proxy - the owning Session was closed" );
-                       }
-                       else if ( !session.isConnected() ) {
-                               throw new LazyInitializationException( "could not initialize proxy - the owning Session is disconnected" );
-                       }
-                       else {
-                               target = session.immediateLoad( entityName, id );
-                               initialized = true;
-                               checkTargetState();
-                       }
-               }
-               else {
-                       checkTargetState();
-               }
-       }
-
-       protected void specialSpecjInitialization() {
-               if ( session == null ) {
-                       //we have a detached collection thats set to null, reattach
-                       if ( sessionFactoryUuid == null ) {
-                               throw new LazyInitializationException( "could not initialize proxy - no Session" );
-                       }
-                       try {
-                               SessionFactoryImplementor sf = (SessionFactoryImplementor)
-                                               SessionFactoryRegistry.INSTANCE.getSessionFactory( sessionFactoryUuid );
-                               SessionImplementor session = (SessionImplementor) sf.openSession();
-
-                               // TODO: On the next major release, add an
-                               // 'isJTA' or 'getTransactionFactory' method to Session.
-                               boolean isJTA = session.getTransactionCoordinator()
-                                               .getTransactionContext().getTransactionEnvironment()
-                                               .getTransactionFactory()
-                                               .compatibleWithJtaSynchronization();
-
-                               if ( !isJTA ) {
-                                       // Explicitly handle the transactions only if we're not in
-                                       // a JTA environment.  A lazy loading temporary session can
-                                       // be created even if a current session and transaction are
-                                       // open (ex: session.clear() was used).  We must prevent
-                                       // multiple transactions.
-                                       ( ( Session) session ).beginTransaction();
-                               }
-
-                               try {
-                                       target = session.immediateLoad( entityName, id );
-                               }
-                               finally {
-                                       // make sure the just opened temp session gets closed!
-                                       try {
-                                               if ( !isJTA ) {
-                                                       ( ( Session) session ).getTransaction().commit();
-                                               }
-                                               ( (Session) session ).close();
-                                       }
-                                       catch (Exception e) {
-                                               log.warn( "Unable to close temporary session used to load lazy proxy associated to no session" );
-                                       }
-                               }
-                               initialized = true;
-                               checkTargetState();
-                       }
-                       catch (Exception e) {
-                               e.printStackTrace();
-                               throw new LazyInitializationException( e.getMessage() );
-                       }
-               }
-               else if ( session.isOpen() && session.isConnected() ) {
-                       target = session.immediateLoad( entityName, id );
-                       initialized = true;
-                       checkTargetState();
-               }
-               else {
-                       throw new LazyInitializationException( "could not initialize proxy - Session was closed or disced" );
-               }
-       }
-
-       protected void prepareForPossibleSpecialSpecjInitialization() {
-               if ( session != null ) {
-                       specjLazyLoad = session.getFactory().getSettings().isInitializeLazyStateOutsideTransactionsEnabled();
-
-                       if ( specjLazyLoad && sessionFactoryUuid == null ) {
-                               try {
-                                       sessionFactoryUuid = (String) session.getFactory().getReference().get( "uuid" ).getContent();
-                               }
-                               catch (NamingException e) {
-                                       //not much we can do if this fails...
-                               }
-                       }
-               }
-       }
-
-       private void checkTargetState() {
-               if ( !unwrap ) {
-                       if ( target == null ) {
-                               getSession().getFactory().getEntityNotFoundDelegate().handleEntityNotFound( entityName, id );
-                       }
-               }
-       }
-
-       /**
-        * Getter for property 'connectedToSession'.
-        *
-        * @return Value for property 'connectedToSession'.
-        */
-       protected final boolean isConnectedToSession() {
-               return getProxyOrNull() != null;
-       }
-
-       private Object getProxyOrNull() {
-               final EntityKey entityKey = generateEntityKeyOrNull( getIdentifier(), session, getEntityName() );
-               if ( entityKey != null && session != null && session.isOpen() ) {
-                       return session.getPersistenceContext().getProxy( entityKey );
-               }
-               return null;
-       }
-
-       @Override
-       public final Object getImplementation() {
-               initialize();
-               return target;
-       }
-
-       @Override
-       public final void setImplementation(Object target) {
-               this.target = target;
-               initialized = true;
-       }
-
-       @Override
-       public final Object getImplementation(SessionImplementor s) throws HibernateException {
-               final EntityKey entityKey = generateEntityKeyOrNull( getIdentifier(), s, getEntityName() );
-               return (entityKey == null ? null : s.getPersistenceContext().getEntity( entityKey ));
-       }
-
-       /**
-        * Getter for property 'target'.
-        * <p/>
-        * Same as {@link #getImplementation()} except that this method will not force initialization.
-        *
-        * @return Value for property 'target'.
-        */
-       protected final Object getTarget() {
-               return target;
-       }
-
-       @Override
-       public final boolean isReadOnlySettingAvailable() {
-               return (session != null && !session.isClosed());
-       }
-
-       private void errorIfReadOnlySettingNotAvailable() {
-               if ( session == null ) {
-                       throw new TransientObjectException(
-                                       "Proxy is detached (i.e, session is null). The read-only/modifiable setting is only accessible when the proxy is associated with an open session."
-                       );
-               }
-               if ( session.isClosed() ) {
-                       throw new SessionException(
-                                       "Session is closed. The read-only/modifiable setting is only accessible when the proxy is associated with an open session."
-                       );
-               }
-       }
-
-       @Override
-       public final boolean isReadOnly() {
-               errorIfReadOnlySettingNotAvailable();
-               return readOnly;
-       }
-
-       @Override
-       public final void setReadOnly(boolean readOnly) {
-               errorIfReadOnlySettingNotAvailable();
-               // only update if readOnly is different from current setting
-               if ( this.readOnly != readOnly ) {
-                       final EntityPersister persister = session.getFactory().getEntityPersister( entityName );
-                       if ( !persister.isMutable() && !readOnly ) {
-                               throw new IllegalStateException( "cannot make proxies for immutable entities modifiable" );
-                       }
-                       this.readOnly = readOnly;
-                       if ( initialized ) {
-                               EntityKey key = generateEntityKeyOrNull( getIdentifier(), session, getEntityName() );
-                               if ( key != null && session.getPersistenceContext().containsEntity( key ) ) {
-                                       session.getPersistenceContext().setReadOnly( target, readOnly );
-                               }
-                       }
-               }
-       }
-
-       /**
-        * Get the read-only/modifiable setting that should be put in affect when it is
-        * attached to a session.
-        * <p/>
-        * This method should only be called during serialization when read-only/modifiable setting
-        * is not available (i.e., isReadOnlySettingAvailable() == false)
-        *
-        * @return null, if the default setting should be used;
-        *         true, for read-only;
-        *         false, for modifiable
-        *
-        * @throws IllegalStateException if isReadOnlySettingAvailable() == true
-        */
-       protected final Boolean isReadOnlyBeforeAttachedToSession() {
-               if ( isReadOnlySettingAvailable() ) {
-                       throw new IllegalStateException(
-                                       "Cannot call isReadOnlyBeforeAttachedToSession when isReadOnlySettingAvailable == true"
-                       );
-               }
-               return readOnlyBeforeAttachedToSession;
-       }
-
-       /**
-        * Set the read-only/modifiable setting that should be put in affect when it is
-        * attached to a session.
-        * <p/>
-        * This method should only be called during deserialization, before associating
-        * the proxy with a session.
-        *
-        * @param readOnlyBeforeAttachedToSession, the read-only/modifiable setting to use when
-        * associated with a session; null indicates that the default should be used.
-        *
-        * @throws IllegalStateException if isReadOnlySettingAvailable() == true
-        */
-       /* package-private */
-       final void setReadOnlyBeforeAttachedToSession(Boolean readOnlyBeforeAttachedToSession) {
-               if ( isReadOnlySettingAvailable() ) {
-                       throw new IllegalStateException(
-                                       "Cannot call setReadOnlyBeforeAttachedToSession when isReadOnlySettingAvailable == true"
-                       );
-               }
-               this.readOnlyBeforeAttachedToSession = readOnlyBeforeAttachedToSession;
-       }
-
-       @Override
-       public boolean isUnwrap() {
-               return unwrap;
-       }
-
-       @Override
-       public void setUnwrap(boolean unwrap) {
-               this.unwrap = unwrap;
-       }
-
-       /** Below is section of code which makes remote service calls */
-
-       private static ICdmApplicationConfiguration configuration;
-       private static boolean remoting = false;
-
-       public static void setConfiguration(ICdmApplicationConfiguration conf) {
-               configuration = conf;
-
-               if(conf instanceof CdmApplicationRemoteController) {
-                       remoting = true;
-               } else {
-                       remoting = false;
-               }
-       }
-
-
-       private void remoteInitialize() {
-
-               if(!initialized) {
-                       int classid = ((Integer)getIdentifier()).intValue();
-                       log.debug("--> Remote Lazy Initializing" + getEntityName() + " with id " + classid);
-                       Class clazz;
-                       try {
-                               clazz = Class.forName(getEntityName());
-                       } catch (ClassNotFoundException e) {
-                               throw new HibernateException("Class for " + getEntityName() + " not found", e);
-                       }
-                       if(configuration == null) {
-                               throw new HibernateException("CdmApplicationRemoteConfiguration not initialized (null)");
-                       }
-                       ICommonService commonService = configuration.getCommonService();
-                       if(commonService == null) {
-                               throw new HibernateException("commonService not initialized (null)");
-                       }
-
-                       CdmBase cdmBase = CdmBase.deproxy(commonService.find(clazz,classid),clazz);
-                       setImplementation(cdmBase);
-
-               }
-       }
-
-       public static boolean isInitialized(AbstractLazyInitializer obj) {
-               return obj.initialized;
-       }
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/jetty-runner-9.2.3.v20140905.jar b/eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/jetty-runner-9.2.3.v20140905.jar
deleted file mode 100644 (file)
index 91c88d6..0000000
Binary files a/eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/jetty-runner-9.2.3.v20140905.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/start-9.2.3.v20140905.jar b/eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/start-9.2.3.v20140905.jar
deleted file mode 100644 (file)
index ef2faaf..0000000
Binary files a/eu.etaxonomy.taxeditor.remoting/src/main/resources/etc/jetty/start-9.2.3.v20140905.jar and /dev/null differ
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/config.properties b/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/config.properties
deleted file mode 100644 (file)
index f706a6e..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-serverName=localhost:8080
-contextPath=remoting
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/httpInvokerServiceClients.xml b/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/httpInvokerServiceClients.xml
deleted file mode 100644 (file)
index e3c0f9f..0000000
+++ /dev/null
@@ -1,480 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<beans xmlns="http://www.springframework.org/schema/beans"\r
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-       xmlns:context="http://www.springframework.org/schema/context"\r
-       xmlns:tx="http://www.springframework.org/schema/tx"\r
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd\r
-    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd\r
-    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">\r
-\r
-       \r
-   <bean id="agentService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/agent.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IAgentService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="annotationService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/annotation.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IAnnotationService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="auditeventService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/auditevent.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IAuditEventService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="classificationService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/classification.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IClassificationService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="collectionService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/collection.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.ICollectionService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="commonService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/common.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.ICommonService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="descriptionService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/description.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IDescriptionService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-   <bean id="editGeoService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/editgeo.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.ext.geo.IEditGeoService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="featureNodeService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/featurenode.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IFeatureNodeService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="featureTreeService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/featuretree.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IFeatureTreeService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="groupService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/group.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IGroupService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="identificationKeyService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/identificationkey.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IIdentificationKeyService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="locationService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/location.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.ILocationService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="markerService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/marker.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IMarkerService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="mediaService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/media.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IMediaService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="nameService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/name.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.INameService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="occurrenceService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/occurrence.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IOccurrenceService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="polytomousKeyNodeService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/polytomouskeynode.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IPolytomousKeyNodeService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="polytomousKeyService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/polytomouskey.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IPolytomousKeyService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="referenceService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/reference.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IReferenceService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-<!-- \r
-   <bean id="serviceService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/service.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IService</value>\r
-               </property>\r
-       </bean>\r
- -->\r
\r
-   <bean id="taxonNodeService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/taxonnode.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.ITaxonNodeService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="taxonService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/taxon.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.ITaxonService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="termService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/term.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.ITermService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="userService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/user.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IUserService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="vocabularyService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/vocabulary.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IVocabularyService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-   <bean id="workingSetService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/workingset.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IWorkingSetService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-   <bean id="grantedAuthorityService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/grantedauthority.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IGrantedAuthorityService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-   <bean id="databaseService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/database.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.IDatabaseService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-   <bean id="lsidAuthorityService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/lsidauthoruty.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.lsid.LSIDAuthorityService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-   <bean id="lsidMetadataService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/lsidmetadata.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.lsid.LSIDMetadataService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-   <bean id="lsiDataService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/lsiddata.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.lsid.LSIDDataService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-       <bean id="providerManager"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/authenticationManager.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>org.springframework.security.authentication.AuthenticationManager</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-       <bean id="primerService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/primer.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.molecular.IPrimerService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-       <bean id="amplificationService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/amplification.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.molecular.IAmplificationService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-       \r
-       <bean id="sequenceService"\r
-               class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">\r
-               <property name="serviceUrl">\r
-                       <value>http://${remoteServer}:${remotePort}/${remoteContext}/remoting/sequence.service</value>\r
-               </property>\r
-               <property name="serviceInterface">\r
-                       <value>eu.etaxonomy.cdm.api.service.molecular.ISequenceService</value>\r
-               </property>\r
-               <property name="httpInvokerRequestExecutor">\r
-                       <bean class="org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor" />\r
-               </property>\r
-       </bean>\r
-\r
-\r
-\r
-</beans>\r
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/localApplicationContext.xml b/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/localApplicationContext.xml
deleted file mode 100644 (file)
index 11a206b..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans"
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-       xmlns:context="http://www.springframework.org/schema/context"
-       xmlns:tx="http://www.springframework.org/schema/tx"
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
-    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
-    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">
-       
-       
-    <!-- Default application context and term initializer -->
-  <import resource="classpath:/eu/etaxonomy/cdm/defaultApplicationContext.xml"/>
-  <bean id="persistentTermInitializer" class="eu.etaxonomy.cdm.database.PersistentTermInitializer">
-    <property name="omit" value="false" />
-  </bean>
-    
-  <import resource="classpath:/eu/etaxonomy/cdm/remote.xml"/>
-  <import resource="classpath:eu/etaxonomy/cdm/remote/json/jsonConfigurations.xml"/>
-  
-  <context:component-scan base-package="eu/etaxonomy/cdm/ext"/>
-  
-  <context:component-scan base-package="eu/etaxonomy/cdm/remote">
-    <context:exclude-filter type="regex" expression="eu\.etaxonomy\.cdm\.remote\.config\.DataSourceConfigurer" />
-    <context:exclude-filter type="regex" expression="eu\.etaxonomy\.cdm\.remote\.config\.LoggingConfigurer" />
-    <context:exclude-filter type="regex" expression="eu\.etaxonomy\.cdm\.remote\.view\.PatternViewResolver" />
-    <context:exclude-filter type="regex" expression="eu\.etaxonomy\.cdm\.remote\.vaadin\..*" />
-    <context:exclude-filter type="regex" expression="eu\.etaxonomy\.cdm\.remote\.controller\..*Portal.*" /> 
-  </context:component-scan>
-  
-
-</beans>
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remotingApplicationContext.xml b/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remotingApplicationContext.xml
deleted file mode 100644 (file)
index 66be8d6..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<beans xmlns="http://www.springframework.org/schema/beans"\r
-       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-       xmlns:context="http://www.springframework.org/schema/context"\r
-       xmlns:tx="http://www.springframework.org/schema/tx"\r
-       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
-    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
-    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd">\r
-       \r
-       \r
-    <!--  <bean id="remoteTermInitializer" class="eu.etaxonomy.cdm.remote.service.RemoteTermInitializer"/>-->\r
-        \r
-       <context:annotation-config/>\r
-    \r
-    <import resource="classpath:/eu/etaxonomy/cdm/httpInvokerServiceClients.xml"/>\r
-    \r
-    <bean id="cdmApplicationRemoteConfiguration" class="eu.etaxonomy.cdm.api.application.CdmApplicationRemoteConfiguration"/>    \r
-    \r
-       <import resource="classpath:/eu/etaxonomy/cdm/remoting_services_security.xml"/>         \r
-       \r
-       <bean id="cdmServiceCacher" class="eu.etaxonomy.cdm.api.cache.CdmServiceCacher"/>\r
-       \r
-       \r
-       <!-- EditGeoService was moved to ext. Therefore it will not be found by the default component scan.
-       We added it here because the Editor needs it. However, this is only a temporary solution.
-       In the future we want to pass in an application context with the editor. -->\r
-\r
-\r
-       <!-- <bean id="conversationHolder" class="eu.etaxonomy.cdm.api.conversation.ConversationHolder" scope="prototype"/> -->\r
-\r
-       <!-- TODO move to io -->\r
-<!-- \r
-       <context:component-scan base-package="eu/etaxonomy/cdm/io">\r
-               <context:exclude-filter type="regex" expression="eu\.etaxonomy\.cdm\.io\.berlinModel.*" />\r
-       </context:component-scan>\r
- -->\r
-       <!-- enable the configuration of transactional behavior based on annotations -->\r
-       <!-- <tx:annotation-driven transaction-manager="transactionManager"/> -->\r
-\r
-</beans>\r
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remoting_persistence_security.xml b/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remoting_persistence_security.xml
deleted file mode 100644 (file)
index 46916f5..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<beans xmlns="http://www.springframework.org/schema/beans"\r
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"\r
-  xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop"\r
-  xsi:schemaLocation="http://www.springframework.org/schema/beans\r
-    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd\r
-    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd\r
-    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd\r
-    http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd\r
-    ">\r
-\r
-\r
-    <!--\r
-      ============================== SECURITY ==============================\r
-    -->\r
-    <bean id="accessDecisionManager" class="eu.etaxonomy.cdm.persistence.hibernate.permission.UnanimousBasedUnrevokable">\r
-        <property name="decisionVoters">\r
-            <list>\r
-                <bean class="eu.etaxonomy.cdm.persistence.hibernate.permission.voter.GrantAlwaysVoter" />\r
-                <bean class="eu.etaxonomy.cdm.persistence.hibernate.permission.voter.TaxonNodeVoter" />\r
-                <bean class="eu.etaxonomy.cdm.persistence.hibernate.permission.voter.TaxonBaseVoter" />\r
-                <bean class="eu.etaxonomy.cdm.persistence.hibernate.permission.voter.DescriptionBaseVoter" />\r
-                <bean class="eu.etaxonomy.cdm.persistence.hibernate.permission.voter.DescriptionElementVoter" />\r
-            </list>\r
-        </property>\r
-    </bean>\r
-\r
-    <!--\r
-        CdmPermissionEvaluator.hasPermissions() evaluates the CdmPermissions like TAXONNODE.UPDATE{20c8f083-5870-4cbd-bf56-c5b2b98ab6a7}\r
-    -->\r
-    <bean id="cdmPermissionEvaluator" class="eu.etaxonomy.cdm.persistence.hibernate.permission.CdmPermissionEvaluator">\r
-        <property name="accessDecisionManager" ref="accessDecisionManager" />\r
-    </bean>\r
-\r
-    <!-- The CdmSecurityHibernateInterceptor checks onSave() and on flushDirty() if the currently authenticated principal or token  has\r
-    sufficient permissions on the entity to be persisted -->\r
-    <bean id="securityHibernateInterceptor" class="eu.etaxonomy.cdm.persistence.hibernate.CdmSecurityHibernateInterceptor">\r
-        <property name="permissionEvaluator" ref="cdmPermissionEvaluator" />\r
-    </bean>\r
-\r
-</beans>\r
diff --git a/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remoting_services_security.xml b/eu.etaxonomy.taxeditor.remoting/src/main/resources/eu/etaxonomy/cdm/remoting_services_security.xml
deleted file mode 100644 (file)
index 4b5a565..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>\r
-<beans xmlns="http://www.springframework.org/schema/beans"\r
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
-  xmlns:context="http://www.springframework.org/schema/context"\r
-  xmlns:security="http://www.springframework.org/schema/security"\r
-  xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd\r
-    http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd\r
-    http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd\r
-    http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd"\r
-    >\r
-\r
-    <import resource="classpath:/eu/etaxonomy/cdm/remoting_persistence_security.xml"/>\r
-    <!--\r
-        ======================================================================\r
-          security specific configuration\r
-        ======================================================================\r
-     -->\r
-    <security:global-method-security pre-post-annotations="enabled" run-as-manager-ref="runAsManager" >\r
-        <security:expression-handler ref="expressionHandler" />\r
-    </security:global-method-security>\r
-\r
-    <!--\r
-        To use "hasPermission()" in the Spring EL method annotations like @PreAuthorize we explicitly configure the permissionEvaluator\r
-        the cdmPermissionEvaluator is already defined in the persistence security context\r
-    -->\r
-    <bean id="expressionHandler" class="org.springframework.security.access.expression.method.DefaultMethodSecurityExpressionHandler">\r
-        <property name="permissionEvaluator" ref="cdmPermissionEvaluator" />\r
-    </bean>\r
-\r
-    <bean id="authenticationManager" class="org.springframework.security.authentication.ProviderManager">\r
-        <property name="providers">\r
-            <list>\r
-                <ref local="daoAuthenticationProvider"/>\r
-            </list>\r
-        </property>\r
-    </bean>\r
-\r
-    <bean id="daoAuthenticationProvider" class="org.springframework.security.authentication.dao.DaoAuthenticationProvider">\r
-        <property name="userDetailsService" ref="userService"/>\r
-        <property name="saltSource" ref="saltSource"/>\r
-        <property name="passwordEncoder" ref="passwordEncoder"/>\r
-    </bean>\r
-\r
-    <bean id="passwordEncoder" class="org.springframework.security.authentication.encoding.Md5PasswordEncoder"/>\r
-\r
-    <bean id="saltSource" class="org.springframework.security.authentication.dao.ReflectionSaltSource">\r
-        <property name="userPropertyToUse" value="getUsername"/>\r
-    </bean>\r
-\r
-    <!--\r
-        Run-As Authentication Replacement for system operations\r
-        as e.g. performed by the eu.etaxonomy.cdm.api.application.FirstDataInserter\r
-\r
-        the key must match FirstDataInserter.RUN_AS_KEY\r
-     -->\r
-    <bean id="runAsManager"\r
-        class="org.springframework.security.access.intercept.RunAsManagerImpl">\r
-      <property name="key" value="TtlCx3pgKC4l"/>\r
-    </bean>\r
-\r
-\r
-</beans>\r
diff --git a/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/exception/CDMServerException.java b/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/exception/CDMServerException.java
deleted file mode 100644 (file)
index 29eb359..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2014 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.exception;
-
-/**
- * @author cmathew
- * @date 23 Sep 2014
- *
- */
-public class CDMServerException extends Exception {
-
-    public CDMServerException(String message) {
-        super(message);
-    }
-
-    public CDMServerException(Exception e) {
-        super(e);
-    }
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/BaseRemotingTest.java b/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/BaseRemotingTest.java
deleted file mode 100644 (file)
index 4700471..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-/**
- * Copyright (C) 2014 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.httpinvoker;
-
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.junit.AfterClass;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.unitils.UnitilsJUnit4;
-import org.unitils.database.DatabaseUnitils;
-import org.unitils.database.annotations.Transactional;
-import org.unitils.database.util.TransactionMode;
-
-import eu.etaxonomy.cdm.api.application.CdmApplicationRemoteController;
-import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
-import eu.etaxonomy.cdm.remote.CdmPersistentRemoteSource;
-import eu.etaxonomy.cdm.remote.CdmRemoteSource;
-import eu.etaxonomy.cdm.remote.CdmRemoteSourceException;
-import eu.etaxonomy.cdm.remote.ICdmRemoteSource;
-
-
-/**
- * Base class for remoting tests, responsible for
- * - starting / stop the cdm server
- * - running some basic connection tests
- * - setting up the remote configuration.
- *
- */
-@Transactional(TransactionMode.DISABLED)
-public class BaseRemotingTest extends UnitilsJUnit4 {
-    private static final Logger logger = Logger.getLogger(BaseRemotingTest.class);
-
-    private static ICdmApplicationConfiguration remoteApplicationController;
-    private static ICdmRemoteSource cdmRemoteSource;
-    private static CdmPersistentRemoteSource remotePersistentSource;
-
-    private static boolean stoppingServer = false;
-
-    @BeforeClass
-    public static void  initializeBaseRemotingTest() {
-        Logger.getRootLogger().setLevel(Level.INFO);
-
-        //DatabaseUnitils.disableConstraints();
-        try {
-            CDMServer.getInstance().start();
-        } catch (Exception e) {
-            e.printStackTrace();
-            Assert.fail("Server failed to start. Reason : " + e.getMessage());
-        }
-        cdmRemoteSource = CdmRemoteSource.NewInstance(CDMServer.getInstance().getName(),
-                CDMServer.getInstance().getHost(),
-                CDMServer.getInstance().getPort(),
-                CDMServer.getInstance().getContextPath(),
-                NomenclaturalCode.ICNAFP);
-        remoteApplicationController =
-                CdmApplicationRemoteController.NewInstance(cdmRemoteSource,
-                        false,
-                        null,
-                        null);
-
-        try {
-            remotePersistentSource = CdmPersistentRemoteSource.NewInstance("default");
-        } catch (CdmRemoteSourceException e) {
-            Assert.fail("Default Remote Persistent Source failed to load. Reason : " + e.getMessage());
-        }
-
-    }
-
-
-    protected static ICdmApplicationConfiguration getRemoteApplicationController() {
-        return remoteApplicationController;
-    }
-
-    protected static ICdmRemoteSource getCdmRemoteSource() {
-        return cdmRemoteSource;
-    }
-
-    protected static CdmPersistentRemoteSource getCdmPersistentRemoteSource() {
-        return remotePersistentSource;
-    }
-
-    @AfterClass
-    public static void cleanup() {
-        try {
-            CDMServer.getInstance().stop();
-        } catch (Exception e) {
-            Assert.fail("Server could not be stopped. Reason : " + e.getMessage());
-        }
-    }
-
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CDMServer.java b/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CDMServer.java
deleted file mode 100644 (file)
index 9f01ae8..0000000
+++ /dev/null
@@ -1,279 +0,0 @@
-// $Id$
-/**
- * Copyright (C) 2014 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.httpinvoker;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStreamReader;
-
-import javax.sql.DataSource;
-
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.springframework.core.io.ClassPathResource;
-import org.springframework.core.io.Resource;
-import org.unitils.database.annotations.TestDataSource;
-import org.unitils.spring.annotation.SpringApplicationContext;
-
-import eu.etaxonomy.cdm.remote.CdmRemoteSourceBase;
-import eu.etaxonomy.taxeditor.exception.CDMServerException;
-
-/**
- *
- * Inspired by http://javabitch.blogspot.de/2012/02/junit-with-jetty-restful-cxf.html
- * @author cmathew
- * @date 23 Sep 2014
- *
- */
-@SpringApplicationContext("file:./target/test-classes/eu/etaxonomy/cdm/testRemotingApplicationContext.xml")
-public class CDMServer {
-
-    public static final Logger logger = Logger.getLogger(CDMServer.class);
-
-    @TestDataSource
-    protected DataSource dataSource;
-
-    private boolean runDefaultCDMServer;
-
-    private final String name = "test-cdm-server";
-    private final String host = "127.0.0.1";
-    private final int port = 9090;
-    private final int stopPort = 9191;
-    private final String stopKey = "jetty-cdm-server";
-    private final String contextPath = "";
-
-    private boolean keepServerRunning = true;
-
-    public static final Resource DEFAULT_CDM_WEBAPP_RESOURCE =
-            new ClassPathResource("/etc/jetty/cdmlib-remote-webapp.war");
-
-    public static final Resource DEFAULT_JETTY_CONFIG_RESOURCE =
-            new ClassPathResource("/etc/jetty/jetty.xml");
-
-    public static final Resource DEFAULT_JETTY_TEMP_RESOURCE =
-            new ClassPathResource("/etc/jetty/temp");
-
-    public static final Resource DEFAULT_JETTY_TEMP_WAR_LIB_RESOURCE =
-            new ClassPathResource("/etc/jetty/temp/webapp/WEB-INF/lib");
-
-    public static final Resource DEFAULT_DATASOURCE_FILE =
-            new ClassPathResource("datasources.xml");
-
-    public static final Resource DEFAULT_JETTY_RUNNER_RESOURCE =
-            new ClassPathResource("/etc/jetty/jetty-runner-9.2.3.v20140905.jar");
-
-    public static final Resource DEFAULT_JETTY_RESOURCE =
-            new ClassPathResource("/etc/jetty/start-9.2.3.v20140905.jar");
-
-
-
-    private static CDMServer cdmServer = null;
-    private static CDMServerException cdmse = null;
-
-    private void CDMServer() {
-        Logger.getRootLogger().setLevel(Level.INFO);
-    }
-
-    public static CDMServer getInstance() {
-        if(cdmServer == null) {
-            cdmServer = new CDMServer();
-        }
-        return cdmServer;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public String getHost() {
-        return host;
-    }
-
-    public int getPort() {
-        return port;
-    }
-
-    public String getContextPath() {
-        return contextPath;
-    }
-
-    public boolean getKeepServerRunning() {
-        return keepServerRunning;
-    }
-
-    public void setKeepServerRunning(boolean keepServerRunning) {
-        this.keepServerRunning = keepServerRunning;
-    }
-
-    public static boolean isRunningInEclipse() {
-        return (System.getProperty("sun.java.command") != null &&
-                System.getProperty("sun.java.command").startsWith("org.eclipse.jdt.internal.junit.runner.RemoteTestRunner"));
-    }
-
-    private String getVMArgs() throws IOException {
-        StringBuilder sb = new StringBuilder();
-        sb.append(" -Dspring.profiles.active=remoting");
-        sb.append(" -Dcdm.beanDefinitionFile=" + DEFAULT_DATASOURCE_FILE.getFile().getAbsolutePath());
-        sb.append(" -Dcdm.datasource=cdmTest");
-        return sb.toString();
-    }
-
-    private String getStartServerArgs() {
-        StringBuilder sb = new StringBuilder();
-        sb.append(" --port ");
-        sb.append(port);
-        return sb.toString();
-    }
-
-    private String getStopServerSettings() {
-        StringBuilder sb = new StringBuilder();
-        sb.append(" --stop-port ");
-        sb.append(stopPort);
-        sb.append(" --stop-key ");
-        sb.append(stopKey);
-        return sb.toString();
-    }
-
-    private String getStopServerArgs() {
-        StringBuilder sb = new StringBuilder();
-        sb.append(" STOP.PORT=");
-        sb.append(stopPort);
-        sb.append(" STOP.KEY=");
-        sb.append(stopKey);
-        return sb.toString();
-    }
-
-    public void start() throws CDMServerException {
-
-        if(isRunning(1)) {
-            logger.info("[CDM-Server] Server already running @ " + host + ":" + port );
-            return;
-        }
-
-        Thread t = new Thread() {
-            @Override
-            public void run() {
-                StringBuffer output = new StringBuffer();
-                try{
-                    Process p;
-                    String command = "java "
-                            + getVMArgs()
-                            + " -jar "
-                            + DEFAULT_JETTY_RUNNER_RESOURCE.getFile().getAbsolutePath()
-                            + getStartServerArgs()
-                            + getStopServerSettings()
-                            + " "
-                            + DEFAULT_CDM_WEBAPP_RESOURCE.getFile().getAbsolutePath();
-                    logger.info("[CDM-Server] Start Command : " + command);
-                    p = Runtime.getRuntime().exec(command);
-
-                    BufferedReader reader =
-                            new BufferedReader(new InputStreamReader(p.getInputStream()));
-
-                    String line = "";
-                    while ((line = reader.readLine())!= null) {
-                        logger.info("[CDM-Server] Start : " + line);
-                    }
-
-                } catch (Exception e) {
-                    e.printStackTrace();
-                    cdmse = new CDMServerException(e);
-                }
-
-            }
-        };
-
-        t.setDaemon(true);
-        cdmse = null;
-        t.start();
-
-        if(isRunning(50)) {
-            logger.info("[CDM-Server] Started Server @ " + host + ":" + port );
-        } else {
-            logger.info("[CDM-Server] Server not started within given interval");
-            throw new CDMServerException("CDM Server not started");
-        }
-
-    }
-
-
-    public boolean isRunning(int checkingIntervals)  {
-        CdmRemoteSourceBase crsb = new CdmRemoteSourceBase("local-cdm-server",
-                host,
-                port,
-                contextPath,
-                null);
-        int intervalsCount = 0;
-        do {
-            try {
-                if(cdmse != null) {
-                    return false;
-                }
-                if(crsb.checkConnection()) {
-                    return true;
-                }
-            } catch (Exception e) {
-                // TODO Auto-generated catch block
-                //e.printStackTrace();
-            }
-            try {
-                Thread.sleep(1000);
-            } catch (InterruptedException e) {
-                // TODO Auto-generated catch block
-                //e.printStackTrace();
-            }
-            intervalsCount++;
-        } while (intervalsCount < checkingIntervals);
-        return false;
-    }
-
-    public void stop() throws Exception {
-
-
-        if(!getInstance().isRunning(1)) {
-            logger.info("[CDM-Server] Server already stopped @ " + host + ":" + port );
-            return;
-        }
-
-        if(getInstance().getKeepServerRunning()) {
-            logger.info("[CDM-Server] Server @ " + host + ":" + port + " is set to keep running");
-            return;
-        }
-
-
-        Thread t = new Thread() {
-            @Override
-            public void run() {
-                StringBuffer output = new StringBuffer();
-                try{
-                    Process p;
-                    String command = "java -jar " + DEFAULT_JETTY_RESOURCE.getFile().getAbsolutePath()
-                            + getStopServerArgs() + " --stop ";
-                    logger.info("[CDM-Server] Stop Command : " + command);
-                    p = Runtime.getRuntime().exec(command);
-                    p.waitFor();
-                    BufferedReader reader =
-                            new BufferedReader(new InputStreamReader(p.getInputStream()));
-                    String line = "";
-                    while ((line = reader.readLine())!= null) {
-                        logger.info("CDM-Server Stop : " + line + "\n");
-                    }
-                    logger.info("[CDM-Server] Stopped Server @ " + host + ":" + port );
-                } catch (Exception e) {
-                    e.printStackTrace();
-                }
-
-            }
-        };
-
-        t.setDaemon(true);
-        t.start();
-    }
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmPersistentRemoteSourceTest.java b/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmPersistentRemoteSourceTest.java
deleted file mode 100644 (file)
index 3240c38..0000000
+++ /dev/null
@@ -1,221 +0,0 @@
-/**
- * Copyright (C) 2014 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.httpinvoker;
-
-
-import static org.hamcrest.CoreMatchers.containsString;
-
-import java.util.Map;
-
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-import eu.etaxonomy.cdm.config.CdmPersistentSourceUtils;
-import eu.etaxonomy.cdm.config.CdmPersistentXMLSource.CdmSourceProperties;
-import eu.etaxonomy.cdm.config.CdmSourceException;
-import eu.etaxonomy.cdm.model.metadata.CdmMetaData.MetaDataPropertyName;
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
-import eu.etaxonomy.cdm.remote.CdmPersistentRemoteSource;
-import eu.etaxonomy.cdm.remote.CdmRemoteSource;
-import eu.etaxonomy.cdm.remote.CdmRemoteSourceException;
-import eu.etaxonomy.cdm.remote.ICdmRemoteSource;
-
-/**
- * Class to test the cdm persistent source functionality, including
- * initialising / saving / updating and deleting
- *
- * Corresponding test sources settings can be found at
- * /src/text/resources/eu.etaxonomy.cdm/cdm.datasources.xml
- *
- */
-public class CdmPersistentRemoteSourceTest extends BaseRemotingTest {
-    private static final Logger logger = Logger.getLogger(CdmPersistentRemoteSourceTest.class);
-
-    private CdmPersistentRemoteSource remotePersistentSource;
-
-    @BeforeClass
-    public static void initialize() {
-        Logger.getRootLogger().setLevel(Level.INFO);
-    }
-
-    @Test
-    public void whenLoadingExistingCompleteRemoteSourceThenLoadIsSuccessful() {
-
-        remotePersistentSource = getCdmPersistentRemoteSource();
-
-        String expectedServer = "127.0.0.1";
-        String expectedPort = "9090";
-        String expectedContextPath = "";
-        logger.info("Default remote source server : " + remotePersistentSource.getServer());
-        Assert.assertTrue("Default server should be " + expectedServer,
-                expectedServer.equals(remotePersistentSource.getServer()));
-
-        logger.info("Default remote source port : " + remotePersistentSource.getPort());
-        Assert.assertTrue("Default port should be 9090",
-                expectedPort.equals(String.valueOf(remotePersistentSource.getPort())));
-
-        logger.info("Default remote source context path : " + remotePersistentSource.getContextPath());
-        Assert.assertTrue("Default remote source context path should be " + expectedContextPath,
-                expectedContextPath.equals(remotePersistentSource.getContextPath()));
-
-        logger.info("Default remote source nomenclatural code : " + remotePersistentSource.getNomenclaturalCode().toString());
-        Assert.assertTrue("Default NomenclaturalCode should be ICNAFP",
-                NomenclaturalCode.ICNAFP.equals(remotePersistentSource.getNomenclaturalCode()));
-    }
-
-
-
-
-    @Test
-    public void whenConnectingToAnActiveServerThenConnectSuccessfully() {
-        // check if active server throws the right exception
-
-        remotePersistentSource = getCdmPersistentRemoteSource();
-
-        String dbSchemaVersion = "";
-        try {
-            dbSchemaVersion = remotePersistentSource.getDbSchemaVersion();
-        } catch (CdmSourceException e) {
-            Assert.fail("getDbSchemaVersion() on active cdm server should not have thrown CdmSourceException");
-        }
-        logger.info("dbSchemaVersion is " + dbSchemaVersion);
-
-
-        boolean isDbEmpty = false;
-        try {
-            isDbEmpty = remotePersistentSource.isDbEmpty();
-        } catch (CdmSourceException e) {
-            Assert.fail("isDbEmpty() on active cdm server should not have thrown CdmSourceException");
-        }
-        Assert.assertFalse(isDbEmpty);
-
-
-        boolean check = false;
-        try {
-            check = remotePersistentSource.checkConnection();
-        } catch (CdmSourceException e) {
-            Assert.fail("checkConnection() on active cdm server should not have thrown CdmSourceException");
-        }
-        Assert.assertTrue(check);
-
-
-    }
-
-    @Test
-    public void whenRequestingMetadatFromRemoteSourceThenMetaDataIsRetrieved() {
-        try {
-            remotePersistentSource = getCdmPersistentRemoteSource();
-            Map<MetaDataPropertyName, String> cdmMetaDataMap = remotePersistentSource.getMetaDataMap();
-            for(MetaDataPropertyName mdpn : cdmMetaDataMap.keySet()) {
-                String value = cdmMetaDataMap.get(mdpn);
-                logger.info("MetaData Property " + mdpn.name() + " has value " + value);
-                Assert.assertNotNull("Meta Data Value for property for " + mdpn.name() + " should not be null", value);
-            }
-        } catch (CdmSourceException e) {
-            // TODO Auto-generated catch block
-            e.printStackTrace();
-        }
-    }
-
-    @Test
-    public void whenLoadingNonExistingRemoteSourceThenThrowException() {
-        try {
-            remotePersistentSource = CdmPersistentRemoteSource.NewInstance("nonExistingSource");
-            Assert.fail("Initialising a non-existing remote source should throw an exception");
-        } catch (CdmRemoteSourceException e) {
-            logger.info(e.getMessage());
-        }
-    }
-
-    @Test
-    public void whenLoadingExistingIncompleteRemoteSourceThenThrowException() {
-        try {
-            remotePersistentSource = CdmPersistentRemoteSource.NewInstance("incomplete");
-            Assert.fail("Initialising an incomplete remote source should throw an exception");
-        } catch (CdmRemoteSourceException e) {
-            Assert.assertThat(e.getMessage(), containsString("Required property '" + CdmSourceProperties.SERVER.toString() + "' is missing"));
-        }
-    }
-
-    @Test
-    public void whenSavingUpdatingDeletingNewCompleteRemoteSourceThenSaveUpdateDeleteIsSuccessful() {
-        String strRemoteSource = "local";
-        Assert.assertFalse("New remote source '" + strRemoteSource + "' should not yet exist in source settings file",
-                CdmPersistentRemoteSource.exists(strRemoteSource));
-        try {
-            ICdmRemoteSource remoteSource =
-                    CdmRemoteSource.NewInstance(strRemoteSource,
-                            "127.0.0.1",
-                            8080,
-                            "col",
-                            NomenclaturalCode.ICNAFP);
-            remotePersistentSource = CdmPersistentRemoteSource.save(strRemoteSource,remoteSource);
-
-            logger.info("Server : " + remotePersistentSource.getServer());
-            Assert.assertTrue("Server value should be equal",
-                    remoteSource.getServer().equals(remotePersistentSource.getServer()));
-
-            logger.info("Port : " + remotePersistentSource.getPort());
-            Assert.assertTrue("Port value should be equal",
-                    remoteSource.getPort() == remotePersistentSource.getPort());
-
-            logger.info("Context Path : " + remotePersistentSource.getContextPath());
-            Assert.assertTrue("Context Path value should be equal",
-                    remoteSource.getContextPath().equals(remotePersistentSource.getContextPath()));
-
-            logger.info("Nomenclatural Code : " + remotePersistentSource.getNomenclaturalCode().name());
-            Assert.assertTrue("Nomenclatural Code value should be equal",
-                    remoteSource.getNomenclaturalCode().name().equals(remotePersistentSource.getNomenclaturalCode().name()));
-
-            Assert.assertTrue("New remote source '" + strRemoteSource + "' should be saved in source settings file",
-                    CdmPersistentRemoteSource.exists(strRemoteSource));
-
-            remoteSource = CdmRemoteSource.NewInstance(strRemoteSource,
-                    "127.0.0.55",
-                    9090,
-                    "cyprus",
-                    NomenclaturalCode.ICNB);
-            remotePersistentSource = CdmPersistentRemoteSource.update(strRemoteSource,remoteSource);
-
-            logger.info("Server : " + remotePersistentSource.getServer());
-            Assert.assertTrue("Server value should be equal",
-                    remoteSource.getServer().equals(remotePersistentSource.getServer()));
-
-            logger.info("Port : " + remotePersistentSource.getPort());
-            Assert.assertTrue("Port value should be equal",
-                    remoteSource.getPort() == remotePersistentSource.getPort());
-
-            logger.info("Context Path : " + remotePersistentSource.getContextPath());
-            Assert.assertTrue("Context Path value should be equal",
-                    remoteSource.getContextPath().equals(remotePersistentSource.getContextPath()));
-
-            logger.info("Nomenclatural Code : " + remotePersistentSource.getNomenclaturalCode().name());
-            Assert.assertTrue("Nomenclatural Code value should be equal",
-                    remoteSource.getNomenclaturalCode().name().equals(remotePersistentSource.getNomenclaturalCode().name()));
-
-            Assert.assertTrue("New remote source '" + strRemoteSource + "' should be saved in source settings file",
-                    CdmPersistentRemoteSource.exists(strRemoteSource));
-
-            CdmPersistentSourceUtils.delete(remotePersistentSource);
-
-            Assert.assertFalse("New remote source '" + strRemoteSource + "' should no longer exist in source settings file",
-                    CdmPersistentRemoteSource.exists(strRemoteSource));
-
-        } catch (CdmRemoteSourceException e) {
-            Assert.fail("Saving a new complete remote source should not throw an exception");
-            logger.info(e.getMessage());
-        }
-    }
-
-
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmRemoteSourceTest.java b/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmRemoteSourceTest.java
deleted file mode 100644 (file)
index 4cbfcf5..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-/**
-* Copyright (C) 2014 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.httpinvoker;
-
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Test;
-import org.springframework.remoting.RemoteAccessException;
-
-import eu.etaxonomy.cdm.config.CdmSourceException;
-import eu.etaxonomy.cdm.model.name.NomenclaturalCode;
-import eu.etaxonomy.cdm.remote.CdmRemoteSource;
-import eu.etaxonomy.taxeditor.lazyloading.RemotePersistentCollectionTest;
-
-public class CdmRemoteSourceTest extends BaseRemotingTest {
-       private static final Logger logger = Logger.getLogger(RemotePersistentCollectionTest.class);
-
-
-       @BeforeClass
-       public static void initialize() {
-
-               Logger.getRootLogger().setLevel(Level.INFO);
-
-       }
-
-       @Test
-       public void whenConnectingToInactiveServerThenFailToConnect() {
-               // check if non-active server throws the right exception
-               CdmRemoteSource inactiveCrs = CdmRemoteSource.NewInstance(CDMServer.getInstance().getName(),
-                       CDMServer.getInstance().getHost(),
-                       808080,
-                       CDMServer.getInstance().getContextPath(),
-                       NomenclaturalCode.ICNAFP);
-               try {
-                       inactiveCrs.getDbSchemaVersion();
-                       Assert.fail("getDbSchemaVersion() on inactive cdm server should have thrown RemoteAccessException");
-               } catch(CdmSourceException cse) {
-                       Assert.fail("getDbSchemaVersion() on inactive cdm server should have thrown RemoteAccessException and not CdmSourceException");
-               } catch(RemoteAccessException rae){
-
-               }
-
-               try {
-                       inactiveCrs.isDbEmpty();
-                       Assert.fail("isDbEmpty() on inactive cdm server should have thrown RemoteAccessException");
-               } catch(CdmSourceException cse) {
-                       Assert.fail("isDbEmpty() on inactive cdm server should have thrown RemoteAccessException and not CdmSourceException");
-               } catch(RemoteAccessException rae){
-
-               }
-
-               try {
-                       inactiveCrs.checkConnection();
-                       Assert.fail("checkConnection() on inactive cdm server should have thrown RemoteAccessException");
-               } catch(CdmSourceException cse) {
-                       Assert.fail("checkConnection() on inactive cdm server should have thrown RemoteAccessException and not CdmSourceException");
-               } catch(RemoteAccessException rae){
-
-               }
-
-       }
-
-       @Test
-       public void whenConnectingToAnActiveServerWithServicesBlockedThenFailToAccessServices() {
-
-       }
-
-       @Test
-       public void whenConnectingToAnActiveServerThenConnectSuccessfully() {
-               // check if active server throws the right exception
-               CdmRemoteSource activeCrs = CdmRemoteSource.NewInstance(CDMServer.getInstance().getName(),
-                CDMServer.getInstance().getHost(),
-                CDMServer.getInstance().getPort(),
-                CDMServer.getInstance().getContextPath(),
-                NomenclaturalCode.ICNAFP);
-               String dbSchemaVersion = "";
-               try {
-                       dbSchemaVersion = activeCrs.getDbSchemaVersion();
-               } catch (CdmSourceException e) {
-                       Assert.fail("getDbSchemaVersion() on active cdm server should not have thrown CdmSourceException");
-               }
-               logger.info("dbSchemaVersion is " + dbSchemaVersion);
-
-
-               boolean isDbEmpty = false;
-               try {
-                       isDbEmpty = activeCrs.isDbEmpty();
-               } catch (CdmSourceException e) {
-                       Assert.fail("isDbEmpty() on active cdm server should not have thrown CdmSourceException");
-               }
-               Assert.assertFalse(isDbEmpty);
-
-
-               boolean check = true;
-               try {
-                       isDbEmpty = activeCrs.checkConnection();
-               } catch (CdmSourceException e) {
-                       Assert.fail("checkConnection() on active cdm server should not have thrown CdmSourceException");
-               }
-               Assert.assertTrue(check);
-
-       }
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmServerTest.java b/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/CdmServerTest.java
deleted file mode 100644 (file)
index a7a206e..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2014 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.httpinvoker;
-
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.junit.Assert;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.unitils.UnitilsJUnit4;
-
-import eu.etaxonomy.taxeditor.lazyloading.AbstractLazyInitializerTest;
-
-/**
- * @author cmathew
- * @date 6 Oct 2014
- *
- */
-public class CdmServerTest extends UnitilsJUnit4 {
-    private static final Logger logger = Logger.getLogger(CdmServerTest.class);
-
-
-    @Test
-    public void stopCdmServer() {
-        Logger.getRootLogger().setLevel(Level.INFO);
-        CDMServer.getInstance().setKeepServerRunning(false);
-        try {
-            CDMServer.getInstance().stop();
-        } catch (Exception e) {
-            Assert.fail("Server could not be stopped. Reason : " + e.getMessage());
-        }
-    }
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/HttpInvokerServicesTest.java b/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/httpinvoker/HttpInvokerServicesTest.java
deleted file mode 100644 (file)
index b05d362..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/**
-* Copyright (C) 2014 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.httpinvoker;
-
-import org.apache.log4j.Logger;
-import org.junit.Assert;
-import org.junit.Test;
-
-import eu.etaxonomy.cdm.config.CdmSourceException;
-
-/**
- * Class to test the HttpInvoker services exposed by the CDM Sever
- *
- */
-public class HttpInvokerServicesTest extends BaseRemotingTest {
-       private static final Logger logger = Logger.getLogger(HttpInvokerServicesTest.class);
-
-       @Test
-       public void whenCallingMethodsOnRemoteServicesThenSuceed() {
-               try {
-                       String dbSchemaVersion = getRemoteApplicationController().getDatabaseService().getDbSchemaVersion();
-                       logger.info("dbSchemaVersion is " + dbSchemaVersion);
-               } catch (CdmSourceException e) {
-                       Assert.fail("pinging database service on active cdm server should not have thrown CdmSourceException");
-               }
-       }
-
-}
diff --git a/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.java b/eu.etaxonomy.taxeditor.remoting/src/test/java/eu/etaxonomy/taxeditor/lazyloading/AbstractLazyInitializerTest.java
deleted file mode 100644 (file)
index 727802a..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-/**
- * Copyright (C) 2014 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.lazyloading;
-
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Set;
-import java.util.UUID;
-
-import org.apache.log4j.Level;
-import org.apache.log4j.Logger;
-import org.junit.Assert;
-import org.junit.BeforeClass;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.unitils.dbunit.annotation.DataSet;
-