- moved transient interfaces to taxeditor.editor
authorPatric Plitzner <p.plitzner@bgbm.org>
Wed, 26 Feb 2014 08:39:05 +0000 (08:39 +0000)
committerPatric Plitzner <p.plitzner@bgbm.org>
Wed, 26 Feb 2014 08:39:05 +0000 (08:39 +0000)
 - changed GUI control of DataImportEditor to be a TableViewer
 - made DataImportEditor generic

28 files changed:
.gitattributes
eu.etaxonomy.taxeditor.bulkeditor/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.bulkeditor/plugin.xml
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/annotatedlineeditor/AnnotatedLineDocumentProvider.java
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/OpenBulkEditorContributionItem.java
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/SaveSpecimenCommand.java [deleted file]
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DataImportEditor.java [deleted file]
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DataImportEditorLineDisplayStrategy.java [deleted file]
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DerivedUnitEditorInput.java [deleted file]
eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientCollectionService.java [deleted file]
eu.etaxonomy.taxeditor.editor/META-INF/MANIFEST.MF
eu.etaxonomy.taxeditor.editor/plugin.xml
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditor.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditorInput.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SaveSpecimenCommand.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportEditor.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportEditorInput.java [new file with mode: 0644]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizard.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/wizard/SpecimenSearchWizard.java with 90% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizardPage.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/wizard/SpecimenSearchWizardPage.java with 97% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientAgentService.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientAgentService.java with 99% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientCdmRepository.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientCdmRepository.java with 86% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientClassificationService.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientClassificationService.java with 99% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientDescriptionService.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientDescriptionService.java with 99% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientNameService.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientNameService.java with 99% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientOccurenceService.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientOccurenceService.java with 99% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientReferenceService.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientReferenceService.java with 99% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientTaxonService.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientTaxonService.java with 99% similarity]
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientTermService.java [moved from eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientTermService.java with 99% similarity]

index 78ec840337a2937e6b32824da98e20cb6b9ebc40..4377492412a576d19489e80df3dc09deae3d63fb 100644 (file)
@@ -78,7 +78,6 @@ eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkedito
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/DynamicMarkerTypeEditingMenu.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/DynamicNewObjectMenu.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/OpenBulkEditorContributionItem.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/DynamicMarkerTypeEditingMenu.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/DynamicNewObjectMenu.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/OpenBulkEditorContributionItem.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/SaveSpecimenCommand.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/derivedunit/handler/AbstractAddDerivedUnitFacadeMediaHandler.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/derivedunit/handler/AddDerivedUnitMediaHandler.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/derivedunit/handler/AddFieldObjectMediaHandler.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/derivedunit/handler/AbstractAddDerivedUnitFacadeMediaHandler.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/derivedunit/handler/AddDerivedUnitMediaHandler.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/derivedunit/handler/AddFieldObjectMediaHandler.java -text
@@ -118,21 +117,6 @@ eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkedito
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsContentProvider.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsLabelProvider.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsView.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsContentProvider.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsLabelProvider.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/referencingobjects/ReferencingObjectsView.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DataImportEditor.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DataImportEditorLineDisplayStrategy.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DerivedUnitEditorInput.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientAgentService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientCdmRepository.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientClassificationService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientCollectionService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientDescriptionService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientNameService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientOccurenceService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientReferenceService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientTaxonService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientTermService.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/wizard/SpecimenSearchWizard.java -text
-eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/wizard/SpecimenSearchWizardPage.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/test/java/eu/etaxonomy/taxeditor/bulkeditor/Application.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/test/java/eu/etaxonomy/taxeditor/bulkeditor/ApplicationActionBarAdvisor.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/test/java/eu/etaxonomy/taxeditor/bulkeditor/ApplicationWorkbenchAdvisor.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/test/java/eu/etaxonomy/taxeditor/bulkeditor/Application.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/test/java/eu/etaxonomy/taxeditor/bulkeditor/ApplicationActionBarAdvisor.java -text
 eu.etaxonomy.taxeditor.bulkeditor/src/test/java/eu/etaxonomy/taxeditor/bulkeditor/ApplicationWorkbenchAdvisor.java -text
@@ -486,6 +470,22 @@ eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/c
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/handler/OpenRelatedConceptHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/operation/CreateConceptRelationOperation.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/operation/DeleteConceptRelationOperation.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/handler/OpenRelatedConceptHandler.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/operation/CreateConceptRelationOperation.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/concept/operation/DeleteConceptRelationOperation.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditor.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditorInput.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SaveSpecimenCommand.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportEditor.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportEditorInput.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizard.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizardPage.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientAgentService.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientCdmRepository.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientClassificationService.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientDescriptionService.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientNameService.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientOccurenceService.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientReferenceService.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientTaxonService.java -text
+eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientTermService.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/CreateDerivateContextMenu.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateContentProvider.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateMenuPropertyTester.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/CreateDerivateContextMenu.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateContentProvider.java -text
 eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/derivate/DerivateMenuPropertyTester.java -text
index 1a4cf7a5b2e34da33108b1a3cef861d14572715b..be65d51ea73ecd396a052823d04b53ef1cd02fa2 100644 (file)
@@ -12,9 +12,7 @@ Export-Package: eu.etaxonomy.taxeditor.annotatedlineeditor,
  eu.etaxonomy.taxeditor.bulkeditor.handler,
  eu.etaxonomy.taxeditor.bulkeditor.input,
  eu.etaxonomy.taxeditor.bulkeditor.internal,
  eu.etaxonomy.taxeditor.bulkeditor.handler,
  eu.etaxonomy.taxeditor.bulkeditor.input,
  eu.etaxonomy.taxeditor.bulkeditor.internal,
- eu.etaxonomy.taxeditor.bulkeditor.referencingobjects,
- eu.etaxonomy.taxeditor.dataimport,
- eu.etaxonomy.taxeditor.dataimport.wizard
+ eu.etaxonomy.taxeditor.bulkeditor.referencingobjects
 Require-Bundle: org.eclipse.ui,
  org.eclipse.core.runtime,
  org.eclipse.ui.editors,
 Require-Bundle: org.eclipse.ui,
  org.eclipse.core.runtime,
  org.eclipse.ui.editors,
index 84349d3fa1997d7ff9da68d8774d8c663e80a0f2..1dbae4734660a4d48e31d5fcd5dbb3b121db39b7 100644 (file)
             id="eu.etaxonomy.taxeditor.bulkeditor.command.derivedunit.addFieldObjectMedia"\r
             name="Add Field Object Media">\r
       </command>\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.command.SaveSpecimenCommand"\r
-            id="eu.etaxonomy.taxeditor.bulkeditor.saveSpecimen"\r
-            name="Save Specimen">\r
-      </command>\r
       <!--command\r
             defaultHandler="eu.etaxonomy.taxeditor.bulkeditor.handler.NewEntityHandler"\r
             id="eu.etaxonomy.taxeditor.bulkeditor.command.new"\r
       <!--command\r
             defaultHandler="eu.etaxonomy.taxeditor.bulkeditor.handler.NewEntityHandler"\r
             id="eu.etaxonomy.taxeditor.bulkeditor.command.new"\r
          </showInPart>\r
       </perspectiveExtension>\r
    </extension>\r
          </showInPart>\r
       </perspectiveExtension>\r
    </extension>\r
-   <extension\r
-         point="org.eclipse.ui.importWizards">\r
-      <wizard\r
-            category="eu.etaxonomy.taxeditor.import.category.cdm"\r
-            class="eu.etaxonomy.taxeditor.dataimport.wizard.SpecimenSearchWizard"\r
-            id="eu.etaxonomy.taxeditor.dataimport.wizard.SpecimenSearchWizard"\r
-            name="Query BioCASE">\r
-         <description>\r
-            Query BioCaseProvider\r
-         </description>\r
-      </wizard>\r
-   </extension>
 <!-- start set marker -->\r
 \r
 </plugin>\r
 <!-- start set marker -->\r
 \r
 </plugin>\r
index 391536bcabd426c29096de915324e2a41469991c..cad73b3e085be0a82042337e93ea6300b0a558af 100644 (file)
@@ -9,8 +9,6 @@
 */
 package eu.etaxonomy.taxeditor.annotatedlineeditor;
 
 */
 package eu.etaxonomy.taxeditor.annotatedlineeditor;
 
-import java.util.ArrayList;
-import java.util.Collection;
 import java.util.Iterator;
 import java.util.List;
 
 import java.util.Iterator;
 import java.util.List;
 
@@ -27,9 +25,7 @@ import org.eclipse.jface.text.source.IAnnotationModel;
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.texteditor.AbstractDocumentProvider;
 
 import org.eclipse.ui.IEditorInput;
 import org.eclipse.ui.texteditor.AbstractDocumentProvider;
 
-import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
 import eu.etaxonomy.taxeditor.bulkeditor.input.AbstractBulkEditorInput;
 import eu.etaxonomy.taxeditor.bulkeditor.input.AbstractBulkEditorInput;
-import eu.etaxonomy.taxeditor.dataimport.DerivedUnitEditorInput;
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 
 
 import eu.etaxonomy.taxeditor.model.AbstractUtility;
 
 
@@ -222,12 +218,6 @@ public class AnnotatedLineDocumentProvider extends AbstractDocumentProvider {
                if (element instanceof AbstractBulkEditorInput) {
                        return ((AbstractBulkEditorInput)element).getModel();
                }
                if (element instanceof AbstractBulkEditorInput) {
                        return ((AbstractBulkEditorInput)element).getModel();
                }
-               else if(element instanceof DerivedUnitEditorInput){
-                   Collection<SpecimenOrObservationBase> results = ((DerivedUnitEditorInput) element).getResults();
-                   if(results!=null){
-                       return new ArrayList<SpecimenOrObservationBase>(results);
-                   }
-               }
                return null;
        }
 
                return null;
        }
 
index 303373ac0f3c8755008d673ef7d097f18b64d5fd..d16a2b0899ef4193b3ee3ae7f53cb66fbcb44fc1 100644 (file)
@@ -25,7 +25,6 @@ import org.eclipse.ui.menus.CommandContributionItemParameter;
 
 import eu.etaxonomy.taxeditor.bulkeditor.IBulkEditorConstants;
 import eu.etaxonomy.taxeditor.bulkeditor.input.BulkEditorInputType;
 
 import eu.etaxonomy.taxeditor.bulkeditor.IBulkEditorConstants;
 import eu.etaxonomy.taxeditor.bulkeditor.input.BulkEditorInputType;
-import eu.etaxonomy.taxeditor.dataimport.DataImportEditor;
 
 /**
  * <p>
 
 /**
  * <p>
@@ -81,8 +80,6 @@ public class OpenBulkEditorContributionItem extends CompoundContributionItem {
         contributionItems.add(new Separator(groupName));
         contributionItems.add(BulkEditorInputType.USER.createContributionItem());
         contributionItems.add(BulkEditorInputType.GROUP.createContributionItem());
         contributionItems.add(new Separator(groupName));
         contributionItems.add(BulkEditorInputType.USER.createContributionItem());
         contributionItems.add(BulkEditorInputType.GROUP.createContributionItem());
-        contributionItems.add(new Separator(groupName));
-        contributionItems.add(createContributionItem("Search Specimen", DataImportEditor.ID));
 
         return contributionItems.toArray(new IContributionItem[contributionItems.size()]);
     }
 
         return contributionItems.toArray(new IContributionItem[contributionItems.size()]);
     }
diff --git a/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/SaveSpecimenCommand.java b/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/bulkeditor/command/SaveSpecimenCommand.java
deleted file mode 100644 (file)
index 174926f..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-package eu.etaxonomy.taxeditor.bulkeditor.command;
-
-import org.eclipse.core.commands.AbstractHandler;
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
-import org.springframework.transaction.TransactionStatus;
-
-import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
-import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
-import eu.etaxonomy.cdm.api.service.IOccurrenceService;
-import eu.etaxonomy.cdm.model.location.NamedArea;
-import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
-import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
-import eu.etaxonomy.taxeditor.dataimport.DataImportEditor;
-import eu.etaxonomy.taxeditor.model.AbstractUtility;
-import eu.etaxonomy.taxeditor.model.LineSelection;
-import eu.etaxonomy.taxeditor.store.CdmStore;
-
-public class SaveSpecimenCommand extends AbstractHandler {
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
-     */
-    @Override
-    public Object execute(ExecutionEvent event) throws ExecutionException {
-        final IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
-        final ISelection selection = window.getActivePage().getSelection();
-        if(selection instanceof LineSelection){
-            LineSelection line = (LineSelection)selection;
-            Object firstElement = line.getFirstElement();
-            if(firstElement instanceof SpecimenOrObservationBase){
-                IWorkbenchPart activePart = AbstractUtility.getActivePart();
-                if(activePart instanceof DataImportEditor){
-                    DataImportEditor dataImportEditor = (DataImportEditor)activePart;
-
-                    ICdmApplicationConfiguration currentApplicationConfiguration = CdmStore.getCurrentApplicationConfiguration();
-//                    currentApplicationConfiguration.getOccurrenceService().saveOrUpdate(CdmBase.deproxy(firstElement, SpecimenOrObservationBase.class));
-                    TransactionStatus tx = currentApplicationConfiguration.startTransaction();
-
-                    DerivedUnitFacade unit1 = DerivedUnitFacade.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
-                    //                  newInstance.setTitleCache("Test Specimen", true);
-                    unit1.setCollectingMethod("Collected from the ground");
-                    unit1.setAccessionNumber("ACC-12345");
-                    unit1.setLocality("locality");
-                    unit1.setCountry(NamedArea.EUROPE());
-
-
-
-
-//                    currentApplicationConfiguration.getOccurrenceService().saveOrUpdate((SpecimenOrObservationBase) firstElement);
-                    CdmStore.getService(IOccurrenceService.class).saveOrUpdate(unit1.innerDerivedUnit());
-                    currentApplicationConfiguration.commitTransaction(tx);
-
-                    dataImportEditor.getConversationHolder().commit(true);
-                }
-            }
-        }
-        return null;
-    }
-
-}
diff --git a/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DataImportEditor.java b/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DataImportEditor.java
deleted file mode 100644 (file)
index c914e6a..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2013 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.dataimport;
-
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.jface.text.source.AnnotationModel;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IEditorSite;
-import org.eclipse.ui.IMemento;
-import org.eclipse.ui.PartInitException;
-
-import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
-import eu.etaxonomy.taxeditor.annotatedlineeditor.AnnotatedLineEditor;
-import eu.etaxonomy.taxeditor.model.IContextListener;
-import eu.etaxonomy.taxeditor.store.CdmStore;
-
-/**
- * @author pplitzner
- * @date 20.09.2013
- *
- */
-public class DataImportEditor extends AnnotatedLineEditor implements IContextListener {
-
-    /** Constant <code>ID="bulkeditor.input.nameRelationship"</code> */
-    public static final String ID = "eu.etaxonomy.taxeditor.dataimport.DataImportEditor";
-
-    /**
-     * Constructs a new DataImportEditor with a new {@link ConversationHolder}
-     */
-    public DataImportEditor() {
-        super(null);
-        CdmStore.getContextManager().addContextListener(this);
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.texteditor.AbstractTextEditor#init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)
-     */
-    @Override
-    public void init(IEditorSite site, IEditorInput input) throws PartInitException {
-        super.init(site, input);
-        conversation = ((DerivedUnitEditorInput)input).getConversationHolder();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.editors.text.TextEditor#initializeEditor()
-     */
-    /** {@inheritDoc} */
-    @Override
-    protected void initializeEditor() {
-        super.initializeEditor();
-        setLineDisplayStrategy(new DataImportEditorLineDisplayStrategy());
-        setEditorContextMenuId("#DataImportEditorContext");
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.AnnotatedLineEditor#dispose()
-     */
-    @Override
-    public void dispose() {
-        super.dispose();
-        CdmStore.getContextManager().removeContextListener(this);
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.AnnotatedLineEditor#doSetInput(org.eclipse.ui.IEditorInput)
-     */
-    @Override
-    protected void doSetInput(IEditorInput input) throws CoreException {
-        super.doSetInput(input);
-        setPartName(input.getName());
-        setTitleToolTip(input.getName());
-    }
-
-    /* (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) {
-        // TODO Auto-generated method stub
-        System.out.println();
-    }
-
-    /* (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) {
-        // TODO Auto-generated method stub
-        System.out.println();
-
-    }
-
-    /* (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) {
-        // TODO Auto-generated method stub
-        System.out.println();
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.model.IContextListener#contextRefresh(org.eclipse.core.runtime.IProgressMonitor)
-     */
-    @Override
-    public void contextRefresh(IProgressMonitor monitor) {
-        if(getDocumentProvider().getAnnotationModel(getEditorInput()) != null){
-            ((AnnotationModel) getDocumentProvider().getAnnotationModel(getEditorInput())).removeAllAnnotations();
-        }
-        setInput(getEditorInput());
-    }
-
-    /* (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) {
-        // TODO Auto-generated method stub
-        System.out.println();
-    }
-
-}
diff --git a/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DataImportEditorLineDisplayStrategy.java b/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DataImportEditorLineDisplayStrategy.java
deleted file mode 100644 (file)
index cf91f38..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2013 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.dataimport;
-
-import org.eclipse.swt.graphics.Font;
-import org.eclipse.swt.graphics.Image;
-
-import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
-import eu.etaxonomy.taxeditor.annotatedlineeditor.EntityListener;
-import eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy;
-
-/**
- * @author pplitzner
- * @date 20.09.2013
- *
- */
-public class DataImportEditorLineDisplayStrategy implements ILineDisplayStrategy {
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#getIndent(java.lang.Object)
-     */
-    @Override
-    public int getIndent(Object entity) {
-        // TODO Auto-generated method stub
-        return 0;
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#getIcon(java.lang.Object)
-     */
-    @Override
-    public Image getIcon(Object entity) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#getFont(java.lang.Object)
-     */
-    @Override
-    public Font getFont(Object entity) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#getText(java.lang.Object)
-     */
-    @Override
-    public String getText(Object entity) {
-        return ((SpecimenOrObservationBase)entity).getTitleCache();
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#getSupplementalText(java.lang.Object)
-     */
-    @Override
-    public String getSupplementalText(Object entity) {
-        return "";
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#getEmptyCacheMessage(java.lang.Object)
-     */
-    @Override
-    public String getEmptyCacheMessage(Object entity) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#setText(java.lang.String, java.lang.Object)
-     */
-    @Override
-    public void setText(String text, Object entity) {
-        // TODO Auto-generated method stub
-
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#getHoverText(java.lang.Object)
-     */
-    @Override
-    public String getHoverText(Object entity) {
-        return ((SpecimenOrObservationBase)entity).getTitleCache();
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#setStatusMessage(java.lang.String, java.lang.Object)
-     */
-    @Override
-    public void setStatusMessage(String text, Object entity) {
-        // TODO Auto-generated method stub
-
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#isEntityCacheEmpty(java.lang.Object)
-     */
-    @Override
-    public boolean isEntityCacheEmpty(Object entity) {
-        // TODO Auto-generated method stub
-        return false;
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.ILineDisplayStrategy#addDisplayListener(java.lang.Object, eu.etaxonomy.taxeditor.annotatedlineeditor.EntityListener)
-     */
-    @Override
-    public void addDisplayListener(Object entity, EntityListener listener) {
-        // TODO Auto-generated method stub
-
-    }
-
-}
diff --git a/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DerivedUnitEditorInput.java b/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/DerivedUnitEditorInput.java
deleted file mode 100644 (file)
index 1674cb6..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2013 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.dataimport;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URISyntaxException;
-import java.util.Collection;
-
-import org.apache.http.client.ClientProtocolException;
-import org.apache.log4j.Logger;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IPersistableElement;
-
-import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
-import eu.etaxonomy.cdm.ext.biocase.BioCaseQuery;
-import eu.etaxonomy.cdm.ext.biocase.BioCaseQueryServiceWrapper;
-import eu.etaxonomy.cdm.io.common.CdmDefaultImport;
-import eu.etaxonomy.cdm.io.specimen.abcd206.in.Abcd206ImportConfigurator;
-import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
-import eu.etaxonomy.taxeditor.dataimport.transientServices.TransientCdmRepository;
-import eu.etaxonomy.taxeditor.store.CdmStore;
-
-/**
- * @author pplitzner
- * @date 20.09.2013
- *
- */
-public class DerivedUnitEditorInput implements IEditorInput {
-
-    private static Logger logger = Logger.getLogger(DerivedUnitEditorInput.class);
-
-    private final BioCaseQuery query;
-
-    private Collection<SpecimenOrObservationBase> results;
-
-    private final ConversationHolder conversationHolder;
-
-    /**
-     * @param results
-     */
-    public DerivedUnitEditorInput(BioCaseQuery query) {
-        this.conversationHolder = CdmStore.createConversation();
-        this.query = query;
-    }
-
-    public void query(){
-        String errorMessage = "Could not execute query " + DerivedUnitEditorInput.this.query;
-        try {
-            InputStream resultStream = new BioCaseQueryServiceWrapper().query(DerivedUnitEditorInput.this.query);
-            Abcd206ImportConfigurator configurator = Abcd206ImportConfigurator.NewInstance(resultStream, null, false);
-            TransientCdmRepository repo =
-                    new TransientCdmRepository(CdmStore.getCurrentApplicationConfiguration());
-            configurator.setCdmAppController(repo);
-
-            CdmDefaultImport<Abcd206ImportConfigurator> importer = new CdmDefaultImport<Abcd206ImportConfigurator>();
-            importer.invoke(configurator);
-            results = repo.getUnits();
-            //            Abcd206Import abcd206Import = new Abcd206Import();
-            //            Abcd206ImportState state = new Abcd206ImportState(configurator);
-            //            abcd206Import.invoke(state);
-            //            state.countTrees();
-        } catch (ClientProtocolException e) {
-            logger.error(errorMessage, e);
-        } catch (IOException e) {
-            logger.error(errorMessage, e);
-        } catch (URISyntaxException e) {
-            logger.error(errorMessage, e);
-        }
-
-        Display.getDefault().asyncExec(new Runnable() {
-
-            @Override
-            public void run() {
-                CdmStore.getContextManager().notifyContextRefresh();
-            }
-        });
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
-     */
-    @Override
-    public Object getAdapter(Class adapter) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#exists()
-     */
-    @Override
-    public boolean exists() {
-        return false;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
-     */
-    @Override
-    public ImageDescriptor getImageDescriptor() {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#getName()
-     */
-    @Override
-    public String getName() {
-        return query.toString();
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#getPersistable()
-     */
-    @Override
-    public IPersistableElement getPersistable() {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see org.eclipse.ui.IEditorInput#getToolTipText()
-     */
-    @Override
-    public String getToolTipText() {
-        return query.toString();
-    }
-
-    /**
-     * @return the results
-     */
-    public Collection<SpecimenOrObservationBase> getResults() {
-        return results;
-    }
-
-    /**
-     * @return the conversationHolder
-     */
-    public ConversationHolder getConversationHolder() {
-        return conversationHolder;
-    }
-
-    /* (non-Javadoc)
-     * @see java.lang.Object#hashCode()
-     */
-    @Override
-    public int hashCode() {
-        final int prime = 31;
-        int result = 1;
-        result = prime * result + ((query == null) ? 0 : query.hashCode());
-        return result;
-    }
-
-    /* (non-Javadoc)
-     * @see java.lang.Object#equals(java.lang.Object)
-     */
-    @Override
-    public boolean equals(Object obj) {
-        if (this == obj) {
-            return true;
-        }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
-            return false;
-        }
-        DerivedUnitEditorInput other = (DerivedUnitEditorInput) obj;
-        if (query == null) {
-            if (other.query != null) {
-                return false;
-            }
-        } else if (!query.equals(other.query)) {
-            return false;
-        }
-        return true;
-    }
-
-}
diff --git a/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientCollectionService.java b/eu.etaxonomy.taxeditor.bulkeditor/src/main/java/eu/etaxonomy/taxeditor/dataimport/transientServices/TransientCollectionService.java
deleted file mode 100644 (file)
index 4179564..0000000
+++ /dev/null
@@ -1,660 +0,0 @@
-// $Id$
-/**
-* Copyright (C) 2013 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.dataimport.transientServices;
-
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.UUID;
-
-import org.hibernate.LockMode;
-import org.hibernate.Session;
-import org.hibernate.criterion.Criterion;
-import org.hibernate.envers.query.criteria.AuditCriterion;
-
-import eu.etaxonomy.cdm.api.service.ICollectionService;
-import eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator;
-import eu.etaxonomy.cdm.api.service.exception.ReferencedObjectUndeletableException;
-import eu.etaxonomy.cdm.api.service.pager.Pager;
-import eu.etaxonomy.cdm.common.monitor.IProgressMonitor;
-import eu.etaxonomy.cdm.model.common.Annotation;
-import eu.etaxonomy.cdm.model.common.ISourceable;
-import eu.etaxonomy.cdm.model.common.IdentifiableSource;
-import eu.etaxonomy.cdm.model.common.LSID;
-import eu.etaxonomy.cdm.model.common.Marker;
-import eu.etaxonomy.cdm.model.common.MarkerType;
-import eu.etaxonomy.cdm.model.common.UuidAndTitleCache;
-import eu.etaxonomy.cdm.model.media.Rights;
-import eu.etaxonomy.cdm.model.occurrence.Collection;
-import eu.etaxonomy.cdm.model.view.AuditEvent;
-import eu.etaxonomy.cdm.model.view.AuditEventRecord;
-import eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort;
-import eu.etaxonomy.cdm.persistence.query.Grouping;
-import eu.etaxonomy.cdm.persistence.query.MatchMode;
-import eu.etaxonomy.cdm.persistence.query.OrderHint;
-import eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy;
-import eu.etaxonomy.cdm.strategy.match.IMatchStrategy;
-import eu.etaxonomy.cdm.strategy.merge.IMergeStrategy;
-
-/**
- * @author pplitzner
- * @date 27.09.2013
- *
- */
-public class TransientCollectionService implements ICollectionService {
-
-    private ICollectionService defaultCollectionService;
-
-    /**
-     * @param defaultCollectionService
-     */
-    public TransientCollectionService(ICollectionService defaultCollectionService) {
-        this.defaultCollectionService = defaultCollectionService;
-    }
-
-    /**
-     * @param clazz
-     * @param query
-     * @param pageSize
-     * @param pageNumber
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.ICollectionService#search(java.lang.Class, java.lang.String, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public Pager<Collection> search(Class<? extends Collection> clazz, String query, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.search(clazz, query, pageSize, pageNumber, orderHints, propertyPaths);
-    }
-
-    /**
-     * @param t
-     * @param pageSize
-     * @param pageNumber
-     * @param sort
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IVersionableService#pageAuditEvents(eu.etaxonomy.cdm.model.common.VersionableEntity, java.lang.Integer, java.lang.Integer, eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort, java.util.List)
-     */
-    @Override
-    public Pager<AuditEventRecord<Collection>> pageAuditEvents(Collection t, Integer pageSize, Integer pageNumber, AuditEventSort sort, List<String> propertyPaths) {
-        return defaultCollectionService.pageAuditEvents(t, pageSize, pageNumber, sort, propertyPaths);
-    }
-
-    /**
-     * @param annotatedObj
-     * @param status
-     * @param pageSize
-     * @param pageNumber
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#getAnnotations(eu.etaxonomy.cdm.model.common.AnnotatableEntity, eu.etaxonomy.cdm.model.common.MarkerType, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public Pager<Annotation> getAnnotations(Collection annotatedObj, MarkerType status, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.getAnnotations(annotatedObj, status, pageSize, pageNumber, orderHints, propertyPaths);
-    }
-
-    /**
-     *
-     * @see eu.etaxonomy.cdm.api.service.IService#clear()
-     */
-    @Override
-    public void clear() {
-        defaultCollectionService.clear();
-    }
-
-    /**
-     * @param t
-     * @param lockMode
-     * @see eu.etaxonomy.cdm.api.service.IService#lock(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode)
-     */
-    @Override
-    public void lock(Collection t, LockMode lockMode) {
-        defaultCollectionService.lock(t, lockMode);
-    }
-
-    /**
-     * @param t
-     * @param lockMode
-     * @param propertyPaths
-     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase, org.hibernate.LockMode, java.util.List)
-     */
-    @Override
-    public void refresh(Collection t, LockMode lockMode, List<String> propertyPaths) {
-        defaultCollectionService.refresh(t, lockMode, propertyPaths);
-    }
-
-    /**
-     *
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache()
-     */
-    @Override
-    public void updateTitleCache() {
-        defaultCollectionService.updateTitleCache();
-    }
-
-    /**
-     * @param t
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IVersionableService#getNextAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
-     */
-    @Override
-    public AuditEventRecord<Collection> getNextAuditEvent(Collection t) {
-        return defaultCollectionService.getNextAuditEvent(t);
-    }
-
-    /**
-     * @param code
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.ICollectionService#searchByCode(java.lang.String)
-     */
-    @Override
-    public List<Collection> searchByCode(String code) {
-        return defaultCollectionService.searchByCode(code);
-    }
-
-    /**
-     * @param annotatableEntity
-     * @param technical
-     * @param pageSize
-     * @param pageNumber
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#getMarkers(eu.etaxonomy.cdm.model.common.AnnotatableEntity, java.lang.Boolean, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public Pager<Marker> getMarkers(Collection annotatableEntity, Boolean technical, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.getMarkers(annotatableEntity, technical, pageSize, pageNumber, orderHints, propertyPaths);
-    }
-
-    /**
-     * @param clazz
-     * @param stepSize
-     * @param cacheStrategy
-     * @param monitor
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#updateTitleCache(java.lang.Class, java.lang.Integer, eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy, eu.etaxonomy.cdm.common.monitor.IProgressMonitor)
-     */
-    @Override
-    public void updateTitleCache(Class<? extends Collection> clazz, Integer stepSize, IIdentifiableEntityCacheStrategy<Collection> cacheStrategy, IProgressMonitor monitor) {
-        defaultCollectionService.updateTitleCache(clazz, stepSize, cacheStrategy, monitor);
-    }
-
-    /**
-     * @param t
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IVersionableService#getPreviousAuditEvent(eu.etaxonomy.cdm.model.common.VersionableEntity)
-     */
-    @Override
-    public AuditEventRecord<Collection> getPreviousAuditEvent(Collection t) {
-        return defaultCollectionService.getPreviousAuditEvent(t);
-    }
-
-    /**
-     * @param clazz
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#count(java.lang.Class)
-     */
-    @Override
-    public int count(Class<? extends Collection> clazz) {
-        return defaultCollectionService.count(clazz);
-    }
-
-    /**
-     * @param clazz
-     * @param from
-     * @param to
-     * @param criteria
-     * @param pageSize
-     * @param pageValue
-     * @param sort
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IVersionableService#pageAuditEvents(java.lang.Class, eu.etaxonomy.cdm.model.view.AuditEvent, eu.etaxonomy.cdm.model.view.AuditEvent, java.util.List, java.lang.Integer, java.lang.Integer, eu.etaxonomy.cdm.persistence.dao.common.AuditEventSort, java.util.List)
-     */
-    @Override
-    public Pager<AuditEventRecord<Collection>> pageAuditEvents(Class<? extends Collection> clazz, AuditEvent from, AuditEvent to, List<AuditCriterion> criteria, Integer pageSize, Integer pageValue, AuditEventSort sort, List<String> propertyPaths) {
-        return defaultCollectionService.pageAuditEvents(clazz, from, to, criteria, pageSize, pageValue, sort, propertyPaths);
-    }
-
-    /**
-     * @param lsid
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#find(eu.etaxonomy.cdm.model.common.LSID)
-     */
-    @Override
-    public Collection find(LSID lsid) {
-        return defaultCollectionService.find(lsid);
-    }
-
-    /**
-     * @param persistentObject
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#delete(eu.etaxonomy.cdm.model.common.ICdmBase)
-     */
-    @Override
-    public UUID delete(Collection persistentObject) throws ReferencedObjectUndeletableException{
-        return defaultCollectionService.delete(persistentObject);
-    }
-
-    /**
-     * @param clazz
-     * @param technical
-     * @param pageSize
-     * @param pageNumber
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#groupMarkers(java.lang.Class, java.lang.Boolean, java.lang.Integer, java.lang.Integer, java.util.List)
-     */
-    @Override
-    public List<Object[]> groupMarkers(Class<? extends Collection> clazz, Boolean technical, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultCollectionService.groupMarkers(clazz, technical, pageSize, pageNumber, propertyPaths);
-    }
-
-    /**
-     * @param uuid
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#exists(java.util.UUID)
-     */
-    @Override
-    public boolean exists(UUID uuid) {
-        return defaultCollectionService.exists(uuid);
-    }
-
-    /**
-     * @param x
-     * @param y
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#replace(eu.etaxonomy.cdm.model.common.IdentifiableEntity, eu.etaxonomy.cdm.model.common.IdentifiableEntity)
-     */
-    @Override
-    public Collection replace(Collection x, Collection y) {
-        return defaultCollectionService.replace(x, y);
-    }
-
-    /**
-     * @param uuidSet
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.Set)
-     */
-    @Override
-    public List<Collection> find(Set<UUID> uuidSet) {
-        return defaultCollectionService.find(uuidSet);
-    }
-
-    /**
-     * @param t
-     * @param pageSize
-     * @param pageNumber
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSources(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
-     */
-    @Override
-    public Pager<IdentifiableSource> getSources(Collection t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultCollectionService.getSources(t, pageSize, pageNumber, propertyPaths);
-    }
-
-    /**
-     * @param uuid
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#find(java.util.UUID)
-     */
-    @Override
-    public Collection find(UUID uuid) {
-        return defaultCollectionService.find(uuid);
-    }
-
-    /**
-     * @param id
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#find(int)
-     */
-    @Override
-    public Collection find(int id) {
-        return defaultCollectionService.find(id);
-    }
-
-    /**
-     * @param t
-     * @param pageSize
-     * @param pageNumber
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getRights(eu.etaxonomy.cdm.model.common.IdentifiableEntity, java.lang.Integer, java.lang.Integer, java.util.List)
-     */
-    @Override
-    public Pager<Rights> getRights(Collection t, Integer pageSize, Integer pageNumber, List<String> propertyPaths) {
-        return defaultCollectionService.getRights(t, pageSize, pageNumber, propertyPaths);
-    }
-
-    /**
-     * @param clazz
-     * @param technical
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IAnnotatableService#countMarkers(java.lang.Class, java.lang.Boolean)
-     */
-    @Override
-    public int countMarkers(Class<? extends Collection> clazz, Boolean technical) {
-        return defaultCollectionService.countMarkers(clazz, technical);
-    }
-
-    /**
-     * @param idSet
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#findById(java.util.Set)
-     */
-    @Override
-    public List<Collection> findById(Set<Integer> idSet) {
-        return defaultCollectionService.findById(idSet);
-    }
-
-    /**
-     * @param clazz
-     * @param idInSource
-     * @param idNamespace
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getSourcedObjectByIdInSource(java.lang.Class, java.lang.String, java.lang.String)
-     */
-    @Override
-    public ISourceable getSourcedObjectByIdInSource(Class clazz, String idInSource, String idNamespace) {
-        return defaultCollectionService.getSourcedObjectByIdInSource(clazz, idInSource, idNamespace);
-    }
-
-    /**
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#getSession()
-     */
-    @Override
-    public Session getSession() {
-        return defaultCollectionService.getSession();
-    }
-
-    /**
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#getUuidAndTitleCache()
-     */
-    @Override
-    public List<UuidAndTitleCache<Collection>> getUuidAndTitleCache() {
-        return defaultCollectionService.getUuidAndTitleCache();
-    }
-
-    /**
-     * @param clazz
-     * @param limit
-     * @param start
-     * @param groups
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#group(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public List<Object[]> group(Class<? extends Collection> clazz, Integer limit, Integer start, List<Grouping> groups, List<String> propertyPaths) {
-        return defaultCollectionService.group(clazz, limit, start, groups, propertyPaths);
-    }
-
-    /**
-     * @param clazz
-     * @param queryString
-     * @param matchmode
-     * @param criteria
-     * @param pageSize
-     * @param pageNumber
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public Pager<Collection> findByTitle(Class<? extends Collection> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.findByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
-    }
-
-    /**
-     * @param type
-     * @param limit
-     * @param start
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#list(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public List<Collection> list(Class<? extends Collection> type, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.list(type, limit, start, orderHints, propertyPaths);
-    }
-
-    /**
-     * @param configurator
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
-     */
-    @Override
-    public Pager<Collection> findByTitle(IIdentifiableEntityServiceConfigurator<Collection> configurator) {
-        return defaultCollectionService.findByTitle(configurator);
-    }
-
-    /**
-     * @param clazz
-     * @param queryString
-     * @param matchmode
-     * @param criteria
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List)
-     */
-    @Override
-    public Integer countByTitle(Class<? extends Collection> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria) {
-        return defaultCollectionService.countByTitle(clazz, queryString, matchmode, criteria);
-    }
-
-    /**
-     * @param uuid
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID)
-     */
-    @Override
-    public Collection load(UUID uuid) {
-        return defaultCollectionService.load(uuid);
-    }
-
-    /**
-     * @param uuid
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#load(java.util.UUID, java.util.List)
-     */
-    @Override
-    public Collection load(UUID uuid, List<String> propertyPaths) {
-        return defaultCollectionService.load(uuid, propertyPaths);
-    }
-
-    /**
-     * @param configurator
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#countByTitle(eu.etaxonomy.cdm.api.service.config.IIdentifiableEntityServiceConfigurator)
-     */
-    @Override
-    public Integer countByTitle(IIdentifiableEntityServiceConfigurator<Collection> configurator) {
-        return defaultCollectionService.countByTitle(configurator);
-    }
-
-    /**
-     * @param transientObject
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#merge(eu.etaxonomy.cdm.model.common.ICdmBase)
-     */
-    @Override
-    public Collection merge(Collection transientObject) {
-        return defaultCollectionService.merge(transientObject);
-    }
-
-    /**
-     * @param clazz
-     * @param queryString
-     * @param matchmode
-     * @param criteria
-     * @param pageSize
-     * @param pageNumber
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#listByTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public List<Collection> listByTitle(Class<? extends Collection> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.listByTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
-    }
-
-    /**
-     * @param type
-     * @param pageSize
-     * @param pageNumber
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#page(java.lang.Class, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public Pager<Collection> page(Class<? extends Collection> type, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.page(type, pageSize, pageNumber, orderHints, propertyPaths);
-    }
-
-    /**
-     * @param persistentObject
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#refresh(eu.etaxonomy.cdm.model.common.ICdmBase)
-     */
-    @Override
-    public UUID refresh(Collection persistentObject) {
-        return defaultCollectionService.refresh(persistentObject);
-    }
-
-    /**
-     * @param clazz
-     * @param queryString
-     * @param matchmode
-     * @param criteria
-     * @param pageSize
-     * @param pageNumber
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#listByReferenceTitle(java.lang.Class, java.lang.String, eu.etaxonomy.cdm.persistence.query.MatchMode, java.util.List, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public List<Collection> listByReferenceTitle(Class<? extends Collection> clazz, String queryString, MatchMode matchmode, List<Criterion> criteria, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.listByReferenceTitle(clazz, queryString, matchmode, criteria, pageSize, pageNumber, orderHints, propertyPaths);
-    }
-
-    /**
-     * @param tableName
-     * @param limit
-     * @param start
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#rows(java.lang.String, int, int)
-     */
-    @Override
-    public List<Collection> rows(String tableName, int limit, int start) {
-        return defaultCollectionService.rows(tableName, limit, start);
-    }
-
-    /**
-     * @param newInstances
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#save(java.util.Collection)
-     */
-    @Override
-    public Map<UUID, Collection> save(java.util.Collection<Collection> newInstances) {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.cdm.api.service.IService#save(eu.etaxonomy.cdm.model.common.ICdmBase)
-     */
-    @Override
-    public UUID save(Collection newInstance) {
-        return null;
-    }
-
-    /* (non-Javadoc)
-     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(eu.etaxonomy.cdm.model.common.ICdmBase)
-     */
-    @Override
-    public UUID saveOrUpdate(Collection transientObject) {
-        return null;
-    }
-
-    /**
-     * @param transientObjects
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#saveOrUpdate(java.util.Collection)
-     */
-    @Override
-    public Map<UUID, Collection> saveOrUpdate(java.util.Collection<Collection> transientObjects) {
-        return null;
-    }
-
-    /**
-     * @param transientObject
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#update(eu.etaxonomy.cdm.model.common.ICdmBase)
-     */
-    @Override
-    public UUID update(Collection transientObject) {
-        return defaultCollectionService.update(transientObject);
-    }
-
-    /**
-     * @param example
-     * @param includeProperties
-     * @param limit
-     * @param start
-     * @param orderHints
-     * @param propertyPaths
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IService#list(eu.etaxonomy.cdm.model.common.ICdmBase, java.util.Set, java.lang.Integer, java.lang.Integer, java.util.List, java.util.List)
-     */
-    @Override
-    public List<Collection> list(Collection example, Set<String> includeProperties, Integer limit, Integer start, List<OrderHint> orderHints, List<String> propertyPaths) {
-        return defaultCollectionService.list(example, includeProperties, limit, start, orderHints, propertyPaths);
-    }
-
-    /**
-     * @param clazz
-     * @param matchStrategy
-     * @param mergeStrategy
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#deduplicate(java.lang.Class, eu.etaxonomy.cdm.strategy.match.IMatchStrategy, eu.etaxonomy.cdm.strategy.merge.IMergeStrategy)
-     */
-    @Override
-    public int deduplicate(Class<? extends Collection> clazz, IMatchStrategy matchStrategy, IMergeStrategy mergeStrategy) {
-        return defaultCollectionService.deduplicate(clazz, matchStrategy, mergeStrategy);
-    }
-
-    /**
-     * @param clazz
-     * @param queryString
-     * @param pageSize
-     * @param pageNumber
-     * @param orderHints
-     * @param matchMode
-     * @return
-     * @see eu.etaxonomy.cdm.api.service.IIdentifiableEntityService#findTitleCache(java.lang.Class, java.lang.String, java.lang.Integer, java.lang.Integer, java.util.List, eu.etaxonomy.cdm.persistence.query.MatchMode)
-     */
-    @Override
-    public Pager<Collection> findTitleCache(Class<? extends Collection> clazz, String queryString, Integer pageSize, Integer pageNumber, List<OrderHint> orderHints, MatchMode matchMode) {
-        return defaultCollectionService.findTitleCache(clazz, queryString, pageSize, pageNumber, orderHints, matchMode);
-    }
-
-
-
-}
index 2022cdfa68701b108e19f49e46b1ad2f1312ced0..af3b874a79d72b418a2d67bc2b5b744bde46996d 100644 (file)
@@ -11,6 +11,7 @@ Export-Package: eu.etaxonomy.taxeditor.editor,
  eu.etaxonomy.taxeditor.editor.internal,
  eu.etaxonomy.taxeditor.editor.name,
  eu.etaxonomy.taxeditor.editor.name.handler,
  eu.etaxonomy.taxeditor.editor.internal,
  eu.etaxonomy.taxeditor.editor.name,
  eu.etaxonomy.taxeditor.editor.name.handler,
+ eu.etaxonomy.taxeditor.editor.view.dataimport,
  eu.etaxonomy.taxeditor.editor.view.descriptive,
  eu.etaxonomy.taxeditor.editor.view.media,
  eu.etaxonomy.taxeditor.editor.view.uses
  eu.etaxonomy.taxeditor.editor.view.descriptive,
  eu.etaxonomy.taxeditor.editor.view.media,
  eu.etaxonomy.taxeditor.editor.view.uses
index 70cb65697f1ab6a6393a26ea4e86ce7e726b10c9..bcd7eb8658f732331e913c4556c5420b3d8ef82e 100644 (file)
             id="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView"
             name="Derivate View">
       </editor>
             id="eu.etaxonomy.taxeditor.editor.view.derivate.DerivateView"
             name="Derivate View">
       </editor>
+      <editor
+            class="eu.etaxonomy.taxeditor.editor.view.dataimport.SpecimenImportEditor"
+            default="false"
+            id="eu.etaxonomy.taxeditor.editor.view.dataimport.SpecimenImportEditor"
+            name="Specimen Import Editor">
+      </editor>
    </extension>
       <extension
             point="org.eclipse.ui.views">
    </extension>
       <extension
             point="org.eclipse.ui.views">
             </visibleWhen>
          </menu>
       </menuContribution>
             </visibleWhen>
          </menu>
       </menuContribution>
+      <menuContribution
+            locationURI="popup:eu.etaxonomy.taxeditor.editor.view.dataimport.SpecimenImportEditor">
+         <command
+               commandId="eu.etaxonomy.taxeditor.editor.view.dataimport.SaveSpecimenCommand"
+               label="Save Specimen"
+               style="push">
+         </command>
+      </menuContribution>
       
       
       
       
       
       
             id="eu.etaxonomy.taxeditor.editor.handler.openDerivateView"
             name="Open Derivate View">
       </command>
             id="eu.etaxonomy.taxeditor.editor.handler.openDerivateView"
             name="Open Derivate View">
       </command>
+       <command
+            defaultHandler="eu.etaxonomy.taxeditor.editor.view.dataimport.SaveSpecimenCommand"
+            id="eu.etaxonomy.taxeditor.editor.view.dataimport.SaveSpecimenCommand"
+            name="Save Specimen">
+      </command>
    </extension>
    <extension
          point="org.eclipse.core.expressions.definitions">
    </extension>
    <extension
          point="org.eclipse.core.expressions.definitions">
             name="Taxonomic Editor Default Key Bindings">
       </scheme>
    </extension>
             name="Taxonomic Editor Default Key Bindings">
       </scheme>
    </extension>
+    <extension
+         point="org.eclipse.ui.importWizards">
+      <wizard
+            category="eu.etaxonomy.taxeditor.import.category.cdm"
+            class="eu.etaxonomy.taxeditor.editor.view.dataimport.SpecimenSearchWizard"
+            id="eu.etaxonomy.taxeditor.editor.view.dataimport.SpecimenSearchWizard"
+            name="Query BioCASE">
+         <description>
+            Query BioCaseProvider
+         </description>
+      </wizard>
+   </extension>
 </plugin>
 </plugin>
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditor.java
new file mode 100644 (file)
index 0000000..5d59593
--- /dev/null
@@ -0,0 +1,218 @@
+// $Id$
+/**
+* Copyright (C) 2013 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.dataimport;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableItem;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.IMemento;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.part.EditorPart;
+
+import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
+import eu.etaxonomy.cdm.api.conversation.IConversationEnabled;
+import eu.etaxonomy.cdm.model.common.IIdentifiableEntity;
+import eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap;
+import eu.etaxonomy.taxeditor.model.IContextListener;
+import eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider;
+import eu.etaxonomy.taxeditor.model.IPartContentHasDetails;
+import eu.etaxonomy.taxeditor.model.IPartContentHasFactualData;
+import eu.etaxonomy.taxeditor.model.IPartContentHasSupplementalData;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+/**
+ * Editor which shows a list of "data" that can be imported into the CDM
+ * @author pplitzner
+ * @date 20.09.2013
+ *
+ */
+public abstract class DataImportEditor<T extends IIdentifiableEntity> extends EditorPart implements IPartContentHasFactualData, IDirtyMarkableSelectionProvider,
+IConversationEnabled, IPartContentHasDetails, IPartContentHasSupplementalData, IContextListener{
+
+    private ConversationHolder conversation;
+
+    private TableViewer tableViewer;
+
+    /**
+     * Constructs a new DataImportEditor with a new {@link ConversationHolder}
+     */
+    public DataImportEditor() {
+        CdmStore.getContextManager().addContextListener(this);
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
+     */
+    @Override
+    public void createPartControl(Composite parent) {
+
+        Table table = new Table(parent, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
+        table.setHeaderVisible(true);//TODO: set header title as BioCase query
+        table.setLinesVisible(true);
+        tableViewer = new TableViewer(table);
+
+        // Propagate selection from viewer
+        getSite().setSelectionProvider(tableViewer);
+
+        //create context menu
+        MenuManager menuManager = new MenuManager();
+        getSite().registerContextMenu(menuManager, tableViewer);
+        Control control = tableViewer.getControl();
+        Menu menu = menuManager.createContextMenu(control);
+        control.setMenu(menu);
+
+        IEditorInput editorInput = getEditorInput();
+        if(editorInput instanceof DataImportEditorInput){
+            for(T specimen:((DataImportEditorInput<T>) editorInput).getResults()){
+                TableItem tableItem = new TableItem(table, SWT.NONE);
+                tableItem.setText(specimen.generateTitle());
+                tableItem.setData(specimen);
+            }
+        }
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.part.WorkbenchPart#setFocus()
+     */
+    @Override
+    public void setFocus() {
+        //make sure to bind again if maybe in another view the conversation was unbound
+        if(!conversation.isBound()){
+            conversation.bind();
+        }
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.texteditor.AbstractTextEditor#init(org.eclipse.ui.IEditorSite, org.eclipse.ui.IEditorInput)
+     */
+    @Override
+    public void init(IEditorSite site, IEditorInput input) throws PartInitException {
+        setSite(site);
+        setInput(input);
+        setPartName(input.getName());
+        setTitleToolTip(input.getName());
+        conversation = ((DataImportEditorInput)input).getConversationHolder();
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.taxeditor.annotatedlineeditor.AnnotatedLineEditor#dispose()
+     */
+    @Override
+    public void dispose() {
+        super.dispose();
+        CdmStore.getContextManager().removeContextListener(this);
+    }
+
+    /* (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) {
+        //nothing
+    }
+
+    /* (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) {
+        //nothing
+    }
+
+    /* (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) {
+        //nothing
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.taxeditor.model.IContextListener#contextRefresh(org.eclipse.core.runtime.IProgressMonitor)
+     */
+    @Override
+    public void contextRefresh(IProgressMonitor monitor) {
+        setInput(getEditorInput());
+    }
+
+    /* (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!=null &&!conversation.isClosed()) {
+            conversation.close();
+        }
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.cdm.persistence.hibernate.ICdmPostDataChangeObserver#update(eu.etaxonomy.cdm.persistence.hibernate.CdmDataChangeMap)
+     */
+    @Override
+    public void update(CdmDataChangeMap changeEvents) {
+        //nothing
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.cdm.api.conversation.IConversationEnabled#getConversationHolder()
+     */
+    @Override
+    public ConversationHolder getConversationHolder() {
+        return conversation;
+    }
+
+    /* (non-Javadoc)
+     * @see eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider#changed(java.lang.Object)
+     */
+    @Override
+    public void changed(Object element) {
+        // cannot be changed
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.part.EditorPart#doSave(org.eclipse.core.runtime.IProgressMonitor)
+     */
+    @Override
+    public void doSave(IProgressMonitor monitor) {
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.part.EditorPart#doSaveAs()
+     */
+    @Override
+    public void doSaveAs() {
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.part.EditorPart#isDirty()
+     */
+    @Override
+    public boolean isDirty() {
+        return false;
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.part.EditorPart#isSaveAsAllowed()
+     */
+    @Override
+    public boolean isSaveAsAllowed() {
+        return false;
+    }
+
+}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditorInput.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/DataImportEditorInput.java
new file mode 100644 (file)
index 0000000..7af4641
--- /dev/null
@@ -0,0 +1,104 @@
+// $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.editor.view.dataimport;
+
+import java.util.Collection;
+
+import org.apache.log4j.Logger;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IPersistableElement;
+
+import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
+import eu.etaxonomy.cdm.model.common.IIdentifiableEntity;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+/**
+ * @author pplitzner
+ * @date 25.02.2014
+ *
+ */
+public abstract class DataImportEditorInput<T extends IIdentifiableEntity> implements IEditorInput {
+
+    private static Logger logger = Logger.getLogger(DataImportEditorInput.class);
+
+    private Collection<T> results;
+
+    private final ConversationHolder conversationHolder;
+
+    /**
+     * @param results
+     */
+    public DataImportEditorInput() {
+        this.conversationHolder = CdmStore.createConversation();
+    }
+
+
+    /* (non-Javadoc)
+     * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
+     */
+    @Override
+    public Object getAdapter(Class adapter) {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.IEditorInput#exists()
+     */
+    @Override
+    public boolean exists() {
+        return false;
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.IEditorInput#getImageDescriptor()
+     */
+    @Override
+    public ImageDescriptor getImageDescriptor() {
+        // TODO Auto-generated method stub
+        return null;
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.IEditorInput#getPersistable()
+     */
+    @Override
+    public IPersistableElement getPersistable() {
+        return null;
+    }
+
+    /**
+     * @return the results
+     */
+    public Collection<T> getResults() {
+        return results;
+    }
+
+    /**
+     * @param results the results to set
+     */
+    public void setResults(Collection<T> results) {
+        this.results = results;
+    }
+
+    /**
+     * @return the conversationHolder
+     */
+    public ConversationHolder getConversationHolder() {
+        return conversationHolder;
+    }
+
+    @Override
+    public abstract int hashCode();
+
+    @Override
+    public abstract boolean equals(Object obj);
+}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SaveSpecimenCommand.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SaveSpecimenCommand.java
new file mode 100644 (file)
index 0000000..1b4ab0f
--- /dev/null
@@ -0,0 +1,42 @@
+package eu.etaxonomy.taxeditor.editor.view.dataimport;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
+
+import eu.etaxonomy.cdm.api.service.IOccurrenceService;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+import eu.etaxonomy.taxeditor.model.AbstractUtility;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+
+public class SaveSpecimenCommand extends AbstractHandler {
+
+    /* (non-Javadoc)
+     * @see org.eclipse.core.commands.IHandler#execute(org.eclipse.core.commands.ExecutionEvent)
+     */
+    @Override
+    public Object execute(ExecutionEvent event) throws ExecutionException {
+        final IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
+        final ISelection selection = window.getActivePage().getSelection();
+        if(selection instanceof StructuredSelection){
+            StructuredSelection structuredSelection = (StructuredSelection)selection;
+            Object firstElement = structuredSelection.getFirstElement();
+            if(firstElement instanceof SpecimenOrObservationBase){
+                IWorkbenchPart activePart = AbstractUtility.getActivePart();
+                if(activePart instanceof DataImportEditor){
+                    DataImportEditor dataImportEditor = (DataImportEditor)activePart;
+                    CdmStore.getService(IOccurrenceService.class).saveOrUpdate((SpecimenOrObservationBase) firstElement);
+                    dataImportEditor.getConversationHolder().commit(true);
+                }
+            }
+        }
+        return null;
+    }
+
+}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportEditor.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportEditor.java
new file mode 100644 (file)
index 0000000..146b59b
--- /dev/null
@@ -0,0 +1,29 @@
+// $Id$
+/**
+* Copyright (C) 2013 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.dataimport;
+
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+
+/**
+ * @author pplitzner
+ * @date 20.09.2013
+ *
+ */
+public class SpecimenImportEditor extends DataImportEditor<SpecimenOrObservationBase> {
+
+    public static final String ID = "eu.etaxonomy.taxeditor.editor.view.dataimport.SpecimenImportEditor";
+
+    /**
+     *
+     */
+    public SpecimenImportEditor() {
+        super();
+    }
+}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportEditorInput.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenImportEditorInput.java
new file mode 100644 (file)
index 0000000..dda21c0
--- /dev/null
@@ -0,0 +1,149 @@
+// $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.editor.view.dataimport;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.swt.widgets.Display;
+
+import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
+import eu.etaxonomy.cdm.ext.biocase.BioCaseQuery;
+import eu.etaxonomy.cdm.model.location.NamedArea;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationType;
+import eu.etaxonomy.taxeditor.store.CdmStore;
+
+/**
+ * @author pplitzner
+ * @date 25.02.2014
+ *
+ */
+public class SpecimenImportEditorInput extends DataImportEditorInput<SpecimenOrObservationBase> {
+
+    private final BioCaseQuery query;
+
+    /**
+     * @param results
+     */
+    public SpecimenImportEditorInput(BioCaseQuery query) {
+        super();
+        this.query = query;
+    }
+
+    public void query(){
+        String errorMessage = "Could not execute query " + SpecimenImportEditorInput.this.query;
+
+        Collection<SpecimenOrObservationBase> results = new ArrayList<SpecimenOrObservationBase>();
+        DerivedUnitFacade unit1 = DerivedUnitFacade.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
+//        newInstance.setTitleCache("Test Specimen", true);
+        unit1.setCollectingMethod("Collected from the ground");
+        unit1.setAccessionNumber("ACC-12345");
+        unit1.setLocality("locality");
+        unit1.setCountry(NamedArea.EUROPE());
+
+        DerivedUnitFacade unit2 = DerivedUnitFacade.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
+        unit2.setTitleCache("Test Specimen 2", false);
+        unit2.setCollectingMethod("Collected from the ground");
+        unit2.setAccessionNumber("ACC-67890");
+        unit2.setLocality("solid ground close to car park");
+        unit2.setCountry(NamedArea.ASIA_TEMPERATE());
+
+        DerivedUnitFacade unit3 = DerivedUnitFacade.NewInstance(SpecimenOrObservationType.PreservedSpecimen);
+        unit3.setTitleCache("Test Specimen 3", false);
+        unit3.setCollectingMethod("Collected from the air");
+        unit3.setAccessionNumber("ACC-999");
+        unit3.setLocality("thin air");
+        unit3.setCountry(NamedArea.SOUTHERNOCEAN());
+
+        results.add(unit1.innerDerivedUnit());
+        results.add(unit2.innerDerivedUnit());
+        results.add(unit3.innerDerivedUnit());
+        results.add(unit1.innerDerivedUnit());
+        setResults(results);
+//        try {
+//            InputStream resultStream = new BioCaseQueryServiceWrapper().query(DataImportEditorInput.this.query);
+//            Abcd206ImportConfigurator configurator = Abcd206ImportConfigurator.NewInstance(resultStream, null, false);
+//            TransientCdmRepository repo =
+//                    new TransientCdmRepository(CdmStore.getCurrentApplicationConfiguration());
+//            configurator.setCdmAppController(repo);
+//
+//            CdmDefaultImport<Abcd206ImportConfigurator> importer = new CdmDefaultImport<Abcd206ImportConfigurator>();
+//            importer.invoke(configurator);
+//            results = repo.getUnits();
+//        } catch (ClientProtocolException e) {
+//            logger.error(errorMessage, e);
+//        } catch (IOException e) {
+//            logger.error(errorMessage, e);
+//        } catch (URISyntaxException e) {
+//            logger.error(errorMessage, e);
+//        }
+
+        Display.getDefault().asyncExec(new Runnable() {
+
+            @Override
+            public void run() {
+                CdmStore.getContextManager().notifyContextRefresh();
+            }
+        });
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.IEditorInput#getName()
+     */
+    @Override
+    public String getName() {
+        return query.toString();
+    }
+
+    /* (non-Javadoc)
+     * @see org.eclipse.ui.IEditorInput#getToolTipText()
+     */
+    @Override
+    public String getToolTipText() {
+        return query.toString();
+    }
+
+    /* (non-Javadoc)
+     * @see java.lang.Object#hashCode()
+     */
+    @Override
+    public int hashCode() {
+        final int prime = 31;
+        int result = 1;
+        result = prime * result + ((query == null) ? 0 : query.hashCode());
+        return result;
+    }
+
+    /* (non-Javadoc)
+     * @see java.lang.Object#equals(java.lang.Object)
+     */
+    @Override
+    public boolean equals(Object obj) {
+        if (this == obj) {
+            return true;
+        }
+        if (obj == null) {
+            return false;
+        }
+        if (getClass() != obj.getClass()) {
+            return false;
+        }
+        SpecimenImportEditorInput other = (SpecimenImportEditorInput) obj;
+        if (query == null) {
+            if (other.query != null) {
+                return false;
+            }
+        } else if (!query.equals(other.query)) {
+            return false;
+        }
+        return true;
+    }
+}
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.wizard;
+package eu.etaxonomy.taxeditor.editor.view.dataimport;
 
 import org.apache.log4j.Logger;
 import org.eclipse.core.runtime.IProgressMonitor;
 
 import org.apache.log4j.Logger;
 import org.eclipse.core.runtime.IProgressMonitor;
@@ -23,8 +23,6 @@ import org.eclipse.ui.PartInitException;
 import org.eclipse.ui.PlatformUI;
 
 import eu.etaxonomy.cdm.ext.biocase.BioCaseQuery;
 import org.eclipse.ui.PlatformUI;
 
 import eu.etaxonomy.cdm.ext.biocase.BioCaseQuery;
-import eu.etaxonomy.taxeditor.dataimport.DataImportEditor;
-import eu.etaxonomy.taxeditor.dataimport.DerivedUnitEditorInput;
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
 import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
@@ -60,7 +58,7 @@ public class SpecimenSearchWizard extends Wizard implements IImportWizard {
         final IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
 
             query = searchPage.getQuery();
         final IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
 
             query = searchPage.getQuery();
-            final DerivedUnitEditorInput input = new DerivedUnitEditorInput(query);
+            final SpecimenImportEditorInput input = new SpecimenImportEditorInput(query);
             Job queryJob = new Job("Query Biocase") {
 
                 @Override
             Job queryJob = new Job("Query Biocase") {
 
                 @Override
@@ -71,7 +69,7 @@ public class SpecimenSearchWizard extends Wizard implements IImportWizard {
             };
             queryJob.schedule();
             try {
             };
             queryJob.schedule();
             try {
-                page.openEditor(input, DataImportEditor.ID, true);
+                page.openEditor(input, SpecimenImportEditor.ID, true);
             } catch ( PartInitException e ) {
                 //Put your exception handler here if you wish to
             }
             } catch ( PartInitException e ) {
                 //Put your exception handler here if you wish to
             }
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.wizard;
+package eu.etaxonomy.taxeditor.editor.view.dataimport;
 
 import org.eclipse.jface.wizard.WizardPage;
 import org.eclipse.swt.widgets.Composite;
 
 import org.eclipse.jface.wizard.WizardPage;
 import org.eclipse.swt.widgets.Composite;
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.util.Collection;
 import java.util.List;
 
 import java.util.Collection;
 import java.util.List;
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.util.Collection;
 
 
 import java.util.Collection;
 
@@ -139,7 +139,8 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
      */
     @Override
     public ICollectionService getCollectionService() {
      */
     @Override
     public ICollectionService getCollectionService() {
-        return new TransientCollectionService(defaultApplicationConfiguration.getCollectionService());
+        return defaultApplicationConfiguration.getCollectionService();
+//        return new TransientCollectionService(defaultApplicationConfiguration.getCollectionService());
     }
 
     /**
     }
 
     /**
@@ -149,6 +150,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public ICommonService getCommonService() {
         return defaultApplicationConfiguration.getCommonService();
     @Override
     public ICommonService getCommonService() {
         return defaultApplicationConfiguration.getCommonService();
+//        return new TransientCommonService(defaultApplicationConfiguration.getCommonService());
     }
 
     /**
     }
 
     /**
@@ -158,6 +160,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IDatabaseService getDatabaseService() {
         return defaultApplicationConfiguration.getDatabaseService();
     @Override
     public IDatabaseService getDatabaseService() {
         return defaultApplicationConfiguration.getDatabaseService();
+//        return new TransientDatabaseService(defaultApplicationConfiguration.getDatabaseService());
     }
 
     /**
     }
 
     /**
@@ -176,6 +179,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IFeatureNodeService getFeatureNodeService() {
         return defaultApplicationConfiguration.getFeatureNodeService();
     @Override
     public IFeatureNodeService getFeatureNodeService() {
         return defaultApplicationConfiguration.getFeatureNodeService();
+//        return new TransientFeatureNodeService(defaultApplicationConfiguration.getFeatureNodeService());
     }
 
     /**
     }
 
     /**
@@ -185,6 +189,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IFeatureTreeService getFeatureTreeService() {
         return defaultApplicationConfiguration.getFeatureTreeService();
     @Override
     public IFeatureTreeService getFeatureTreeService() {
         return defaultApplicationConfiguration.getFeatureTreeService();
+//        return new TransientFeatureTreeService(defaultApplicationConfiguration.getFeatureTreeService());
     }
 
     /**
     }
 
     /**
@@ -194,6 +199,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IGrantedAuthorityService getGrantedAuthorityService() {
         return defaultApplicationConfiguration.getGrantedAuthorityService();
     @Override
     public IGrantedAuthorityService getGrantedAuthorityService() {
         return defaultApplicationConfiguration.getGrantedAuthorityService();
+//        return new TransientGrantedAuthorityService(defaultApplicationConfiguration.getGrantedAuthorityService());
     }
 
     /**
     }
 
     /**
@@ -203,6 +209,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IGroupService getGroupService() {
         return defaultApplicationConfiguration.getGroupService();
     @Override
     public IGroupService getGroupService() {
         return defaultApplicationConfiguration.getGroupService();
+//        return new TransientGroupService(defaultApplicationConfiguration.getGroupService());
     }
 
     /**
     }
 
     /**
@@ -212,6 +219,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IIdentificationKeyService getIdentificationKeyService() {
         return defaultApplicationConfiguration.getIdentificationKeyService();
     @Override
     public IIdentificationKeyService getIdentificationKeyService() {
         return defaultApplicationConfiguration.getIdentificationKeyService();
+//        return new TransientIdentificationService(defaultApplicationConfiguration.getIdentificationKeyService());
     }
 
     /**
     }
 
     /**
@@ -221,6 +229,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public ILocationService getLocationService() {
         return defaultApplicationConfiguration.getLocationService();
     @Override
     public ILocationService getLocationService() {
         return defaultApplicationConfiguration.getLocationService();
+//        return new TransientLocationService(defaultApplicationConfiguration.getLocationService());
     }
 
     /**
     }
 
     /**
@@ -230,6 +239,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IService<CdmBase> getMainService() {
         return defaultApplicationConfiguration.getMainService();
     @Override
     public IService<CdmBase> getMainService() {
         return defaultApplicationConfiguration.getMainService();
+//        return new TransientMainService(defaultApplicationConfiguration.getMainService());
     }
 
     /**
     }
 
     /**
@@ -239,6 +249,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IMediaService getMediaService() {
         return defaultApplicationConfiguration.getMediaService();
     @Override
     public IMediaService getMediaService() {
         return defaultApplicationConfiguration.getMediaService();
+//        return new TransientMediaService(defaultApplicationConfiguration.getMediaService());
     }
 
     /**
     }
 
     /**
@@ -278,6 +289,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IPolytomousKeyNodeService getPolytomousKeyNodeService() {
         return defaultApplicationConfiguration.getPolytomousKeyNodeService();
     @Override
     public IPolytomousKeyNodeService getPolytomousKeyNodeService() {
         return defaultApplicationConfiguration.getPolytomousKeyNodeService();
+//        return new TransientPolytomousKeyNodeService(defaultApplicationConfiguration.getPolytomousKeyNodeService());
     }
 
     /**
     }
 
     /**
@@ -287,6 +299,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IPolytomousKeyService getPolytomousKeyService() {
         return defaultApplicationConfiguration.getPolytomousKeyService();
     @Override
     public IPolytomousKeyService getPolytomousKeyService() {
         return defaultApplicationConfiguration.getPolytomousKeyService();
+//        return new TransientPolytomousKeyService(defaultApplicationConfiguration.getPolytomousKeyService());
     }
 
     /**
     }
 
     /**
@@ -305,6 +318,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public ITaxonNodeService getTaxonNodeService() {
         return defaultApplicationConfiguration.getTaxonNodeService();
     @Override
     public ITaxonNodeService getTaxonNodeService() {
         return defaultApplicationConfiguration.getTaxonNodeService();
+//        return new TransientTaxonNodeService(defaultApplicationConfiguration.getTaxonNodeService());
     }
 
     /**
     }
 
     /**
@@ -341,6 +355,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IUserService getUserService() {
         return defaultApplicationConfiguration.getUserService();
     @Override
     public IUserService getUserService() {
         return defaultApplicationConfiguration.getUserService();
+//        return new TransientUserService(defaultApplicationConfiguration.getUserService());
     }
 
     /**
     }
 
     /**
@@ -350,6 +365,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IVocabularyService getVocabularyService() {
         return defaultApplicationConfiguration.getVocabularyService();
     @Override
     public IVocabularyService getVocabularyService() {
         return defaultApplicationConfiguration.getVocabularyService();
+//        return new TransientVocabularyService(defaultApplicationConfiguration.getVocabularyService());
     }
 
     /**
     }
 
     /**
@@ -359,6 +375,7 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     @Override
     public IWorkingSetService getWorkingSetService() {
         return defaultApplicationConfiguration.getWorkingSetService();
     @Override
     public IWorkingSetService getWorkingSetService() {
         return defaultApplicationConfiguration.getWorkingSetService();
+//        return new TransientWorkingSetService(defaultApplicationConfiguration.getWorkingSetService());
     }
 
     /**
     }
 
     /**
@@ -379,7 +396,4 @@ public class TransientCdmRepository implements ICdmApplicationConfiguration {
     public TransactionStatus startTransaction(Boolean arg0) {
         return defaultApplicationConfiguration.startTransaction(arg0);
     }
     public TransactionStatus startTransaction(Boolean arg0) {
         return defaultApplicationConfiguration.startTransaction(arg0);
     }
-
-
-
 }
 }
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.util.Collection;
 import java.util.List;
 
 import java.util.Collection;
 import java.util.List;
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.util.Collection;
 import java.util.List;
 
 import java.util.Collection;
 import java.util.List;
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.io.IOException;
 import java.util.Collection;
 
 import java.io.IOException;
 import java.util.Collection;
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.io.IOException;
 import java.util.Collection;
 
 import java.io.IOException;
 import java.util.Collection;
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.util.Collection;
 import java.util.List;
 
 import java.util.Collection;
 import java.util.List;
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.io.IOException;
 import java.util.Collection;
 
 import java.io.IOException;
 import java.util.Collection;
@@ -7,7 +7,7 @@
 * 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.
 */
 * 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.dataimport.transientServices;
+package eu.etaxonomy.taxeditor.editor.view.dataimport.transientServices;
 
 import java.net.URI;
 import java.util.Collection;
 
 import java.net.URI;
 import java.util.Collection;