minor
authorKatja Luther <k.luther@bgbm.org>
Mon, 18 Jul 2016 11:52:09 +0000 (13:52 +0200)
committerKatja Luther <k.luther@bgbm.org>
Mon, 18 Jul 2016 11:52:09 +0000 (13:52 +0200)
16 files changed:
eu.etaxonomy.taxeditor.cdmlib/.classpath
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/AbstractGroupedContainer.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/name/container/LineBreakListener.java
eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/transientServices/TransientClassificationService.java
eu.etaxonomy.taxeditor.navigation/src/main/java/eu/etaxonomy/taxeditor/navigation/operation/CreateClassification.java
eu.etaxonomy.taxeditor.store/plugin.xml [changed mode: 0644->0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/AbstractIOManager.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/io/ImportManager.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/dialog/selection/TaxonNodeSelectionDialog.java [changed mode: 0644->0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/RepresentationElement.java [changed mode: 0644->0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/element/TranslatableRepresentationElement.java [changed mode: 0644->0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/ui/translation/TermTranslationWizardPage.java [changed mode: 0644->0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/DataImportEditorContextMenu.java [changed mode: 0644->0755]
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/GbifResponseImportView.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/SaveImportedSpecimenAction.java
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/dataimport/SpecimenSearchWizard.java [changed mode: 0644->0755]

index 2e1d158276872411a0fc5c2fdf90326deea7ba46..63e7f720745edf06354bb5fb7eaa8d5bc06fa004 100644 (file)
        <classpathentry exported="true" kind="lib" path="lib/batik-xml-1.7.jar"/>\r
        <classpathentry exported="true" kind="lib" path="lib/c3p0-0.9.5.2.jar"/>\r
        <classpathentry exported="true" kind="lib" path="lib/cdmlib-commons-4.3.0-SNAPSHOT.jar"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-4.3.0-SNAPSHOT.jar"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-4.3.0-SNAPSHOT.jar"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-4.3.0-SNAPSHOT.jar"/>\r
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-ext-4.3.0-SNAPSHOT.jar" sourcepath="C:/Users/k.luther/.m2/repository/eu/etaxonomy/cdmlib-ext/4.3.0-SNAPSHOT/cdmlib-ext-4.3.0-SNAPSHOT-sources.jar"/>\r
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-io-4.3.0-SNAPSHOT.jar" sourcepath="C:/Users/k.luther/.m2/repository/eu/etaxonomy/cdmlib-io/4.3.0-SNAPSHOT/cdmlib-io-4.3.0-SNAPSHOT-sources.jar"/>\r
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-model-4.3.0-SNAPSHOT.jar" sourcepath="C:/Users/k.luther/.m2/repository/eu/etaxonomy/cdmlib-model/4.3.0-SNAPSHOT/cdmlib-model-4.3.0-SNAPSHOT-sources.jar"/>\r
        <classpathentry exported="true" kind="lib" path="lib/cdmlib-persistence-4.3.0-SNAPSHOT.jar"/>\r
        <classpathentry exported="true" kind="lib" path="lib/cdmlib-print-4.3.0-SNAPSHOT.jar"/>\r
        <classpathentry exported="true" kind="lib" path="lib/cdmlib-remote-4.3.0-SNAPSHOT.jar"/>\r
-       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-4.3.0-SNAPSHOT.jar"/>\r
+       <classpathentry exported="true" kind="lib" path="lib/cdmlib-services-4.3.0-SNAPSHOT.jar" sourcepath="C:/Users/k.luther/.m2/repository/eu/etaxonomy/cdmlib-services/4.3.0-SNAPSHOT/cdmlib-services-4.3.0-SNAPSHOT-sources.jar"/>\r
        <classpathentry exported="true" kind="lib" path="lib/cdmlib-test-4.3.0-SNAPSHOT.jar"/>\r
        <classpathentry exported="true" kind="lib" path="lib/cglib-3.2.0.jar"/>\r
        <classpathentry exported="true" kind="lib" path="lib/cglib-nodep-3.2.0.jar"/>\r
index d86ccbda546d54b9399ed67b78c463351d7d226a..d9be7cb02a5c374ec53e69fbe3d05b685691e77d 100644 (file)
@@ -900,7 +900,7 @@ abstract public class AbstractGroupedContainer<T extends TaxonBase> implements
                getNameViewer().getTextWidget().setFont(defaultFont);
 
                getNameViewer().getDocument().set(getEmptyTextPrompt());
-       //      placeCursor();
+               placeCursor();
        }
 
        /**
@@ -1123,11 +1123,10 @@ abstract public class AbstractGroupedContainer<T extends TaxonBase> implements
                                AbstractGroupedContainer.this.handleSplitText(text);
                        }
 
-                       
                };
 
                getNameViewer().getTextWidget().addVerifyListener(lineBreakListener);
-               //getNameViewer().getTextWidget().addKeyListener(lineBreakListener);
+               
        }
 
        abstract class LabelEllipsisListener extends ControlAdapter {
index e8462fc7c99a0e6be61d61af11413c2788346362..adf17288ec2224cf21489c843e7c50bb264b02cb 100644 (file)
@@ -44,8 +44,10 @@ import org.eclipse.swt.events.VerifyListener;
  * @created 19.05.2008
  * @version 1.0
  */
+
 public abstract class LineBreakListener implements VerifyListener{
 
+
        private static String LINE_BREAK = System.getProperty("line.separator");
        
        
index 19010e64779e69f26af8e78b99eaa544341f360c..13286d85d729bf02e459d3fa3c49a16ab1172590 100644 (file)
@@ -992,16 +992,16 @@ public class TransientClassificationService implements IClassificationService {
 
        @Override
        public List<UuidAndTitleCache<TaxonNode>> getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(
-                       UUID classificationUuid, List<UUID> excludeTaxa, Integer limit,
+                       UUID classificationUuid,  Integer limit,
                        String pattern) {
-               return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classificationUuid, excludeTaxa, limit, pattern);
+               return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classificationUuid, limit, pattern);
        }
 
        @Override
        public List<UuidAndTitleCache<TaxonNode>> getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(
-                       Classification classification, List<UUID> excludeTaxa,
+                       Classification classification, 
                        Integer limit, String pattern) {
-               return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classification, excludeTaxa, limit, pattern);
+               return defaultService.getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(classification, limit, pattern);
        }
 
        @Override
index 8d3aeead72bf87e3f527ab51bbdbfc7da9fe3c0b..97aa07b518c5a0a539a61585efe1d009b1054c4f 100644 (file)
@@ -66,7 +66,7 @@ public class CreateClassification extends AbstractPersistentPostOperation {
 
                if(classification.getReference() == null){
                        Reference reference = ReferenceFactory.newGeneric();
-                       reference.setTitleCache(classification.getTitleCache(), true);
+                       reference.setTitle(classification.getTitleCache());
                        classification.setReference(reference);
                }
 
old mode 100644 (file)
new mode 100755 (executable)
index acb4023..9b1bca5
             name="%view.name"
             restorable="true">
       </view>
+      <view
+        allowMultiple="true"
+        class="eu.etaxonomy.taxeditor.view.dataimport.SpecimenImportView"
+        id="eu.etaxonomy.taxeditor.view.dataimport.SpecimenImportView"
+        name="%view.name.7">
+         </view>
+         <view
+        allowMultiple="true"
+        class="eu.etaxonomy.taxeditor.view.dataimport.GbifResponseImportView"
+        id="eu.etaxonomy.taxeditor.view.dataimport.GbifResponseImportView"
+        name="%view.name.8">
+         </view>
       <view  
                        name="%view.name.0"  
                        category="org.eclipse.ui"  
             id="eu.etaxonomy.taxeditor.io.import.tcs"
             name="%wizard.name">
       </wizard>
+       <wizard
+            category="eu.etaxonomy.taxeditor.import.category.cdm"
+            class="eu.etaxonomy.taxeditor.view.dataimport.SpecimenSearchWizard"
+            id="eu.etaxonomy.taxeditor.view.dataimport.SpecimenSearchWizard"
+            name="%wizard.name.21">
+            <description>
+                %wizard.description
+            </description>
+        </wizard>
+   
    <!--   <wizard
             category="eu.etaxonomy.taxeditor.import.category.cdm"
             class="eu.etaxonomy.taxeditor.io.wizard.JaxbImportWizard"
index 7de630396a76541a5b6bd435c2b8af505280fbc6..790a4438b40a48bd828bd44ea6de6bd8abc99657 100644 (file)
@@ -30,7 +30,7 @@ public abstract class AbstractIOManager<CONFIGURATOR extends IIoConfigurator> {
        protected ICdmApplicationConfiguration applicationConfiguration;
 
        public static enum TYPE {
-               Jaxb, Tcs, Excel_Taxa, Endnote, Sdd, Abcd, SpecimenCdmExcel, Excel_Name, SpecimenSearch
+               Jaxb, Tcs, Excel_Taxa, Endnote, Sdd, Abcd, SpecimenCdmExcel, Excel_Name, SpecimenSearch, Gbif
        }
 
        /**
index 809e19efa068a89ddf1c4d3f5d74ccfa71f1711d..0e5eafb9225439013357b46bf07c2f94a4de65bc 100644 (file)
@@ -12,10 +12,12 @@ package eu.etaxonomy.taxeditor.io;
 
 import java.io.File;
 import java.io.InputStream;
+import java.net.URI;
 import java.nio.file.Files;
 import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.List;
+import java.util.Set;
 import java.util.UUID;
 
 import org.apache.commons.io.IOUtils;
@@ -30,10 +32,12 @@ import org.eclipse.ui.PlatformUI;
 import eu.etaxonomy.cdm.api.application.CdmApplicationState;
 import eu.etaxonomy.cdm.api.application.ICdmApplicationConfiguration;
 import eu.etaxonomy.cdm.common.monitor.IRemotingProgressMonitor;
+import eu.etaxonomy.cdm.ext.occurrence.OccurenceQuery;
 import eu.etaxonomy.cdm.io.common.CdmDefaultImport;
 import eu.etaxonomy.cdm.io.common.IImportConfigurator;
 import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE;
 import eu.etaxonomy.cdm.io.common.ImportResult;
+import eu.etaxonomy.cdm.io.dwca.in.DwcaImportConfigurator;
 import eu.etaxonomy.cdm.io.excel.taxa.NormalExplicitImportConfigurator;
 import eu.etaxonomy.cdm.io.jaxb.JaxbImportConfigurator;
 import eu.etaxonomy.cdm.io.reference.endnote.in.EndnoteImportConfigurator;
@@ -302,6 +306,8 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
                        return SpecimenCdmExcelImportConfigurator.NewInstance(null, null);
                case SpecimenSearch:
                    return Abcd206ImportConfigurator.NewInstance(null, null);
+               case Gbif:
+                   return DwcaImportConfigurator.NewInstance(null, null);
                default:
                        MessagingUtils.notImplementedMessage(this);
                        throw new IllegalArgumentException("Import not supported yet");
@@ -386,6 +392,11 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
        public SpecimenCdmExcelImportConfigurator SpecimenCdmExcelImportConfigurator() {
                return (SpecimenCdmExcelImportConfigurator) getConfigurator(TYPE.SpecimenCdmExcel);
        }
+       
+       public DwcaImportConfigurator DwcaImportConfigurator() {
+               return (DwcaImportConfigurator) getConfigurator(TYPE.Gbif);
+       }
+
 
     /**
      * {@inheritDoc}
@@ -402,5 +413,34 @@ public class ImportManager extends AbstractIOManager<IImportConfigurator> implem
 
     }
 
+       public Job createIOServiceJob(final DwcaImportConfigurator configurator) {
+                Assert.isNotNull(configurator, "Configuration may not be null");
+               final Display display = Display.getDefault();
+               Job job = new Job("Import: " + " Dwca") {
+
+                   @Override
+                   protected IStatus run(IProgressMonitor monitor) {
+                       monitor.beginTask("Importing data", IProgressMonitor.UNKNOWN);
+                       IIOService ioService = CdmApplicationState.getIOService();
+
+                       ImportResult result = ioService.importDataFromStream(configurator);
+                       monitor.done();
+
+                       display.asyncExec(new Runnable() {
+
+                           @Override
+                           public void run() {
+                               CdmStore.getContextManager().notifyContextRefresh();
+                           }
+                       });
+
+                       return Status.OK_STATUS;
+                   }
+               };
+
+               return job;
+
+       }
+
 
 }
old mode 100644 (file)
new mode 100755 (executable)
index bfff39f..5292eac
@@ -152,7 +152,7 @@ public class TaxonNodeSelectionDialog extends AbstractFilteredCdmResourceSelecti
 
                //FIXME prelim
                pattern = pattern + "*";
-               model = CdmStore.getService(IClassificationService.class).getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(selectedClassification.getUuid(), excludeTaxa, limitOfInitialElements, pattern);
+               model = CdmStore.getService(IClassificationService.class).getTaxonNodeUuidAndTitleCacheOfAcceptedTaxaByClassification(selectedClassification.getUuid(),  limitOfInitialElements, pattern);
        }
 
        /** {@inheritDoc} */
old mode 100644 (file)
new mode 100755 (executable)
index 8645a2c..f17cd55
@@ -135,7 +135,7 @@ SelectionListener{
                 ICdmFormElement formElement, int style) {
 
             combo_language = formFactory.createDefinedTermComboElement(TermType.Language, formElement,
-                            "", null, true, style);
+                            "", null, false, style);
 
             combo_language.addSelectionListener(this);
 
@@ -174,8 +174,9 @@ SelectionListener{
                 element_Label.setText(selectedRepresentation.getLabel());
                 element_abbrevLabel.setText(selectedRepresentation.getAbbreviatedLabel());
                 element_text.setText(selectedRepresentation.getDescription());
-
+                
             }else {
+                
                 element_Label.setEnabled(false);
                  element_abbrevLabel.setEnabled(false);
                  element_text.setEnabled(false);
old mode 100644 (file)
new mode 100755 (executable)
index 7b78f75..6a29983
@@ -17,6 +17,7 @@ import org.eclipse.swt.events.SelectionEvent;
 
 import eu.etaxonomy.cdm.model.common.Representation;
 import eu.etaxonomy.cdm.model.common.TermBase;
+import eu.etaxonomy.cdm.model.common.TermType;
 import eu.etaxonomy.taxeditor.model.MessagingUtils;
 import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
 import eu.etaxonomy.taxeditor.ui.section.vocabulary.TermTranslationWizard;
@@ -40,6 +41,7 @@ public class TranslatableRepresentationElement extends RepresentationElement {
     public TranslatableRepresentationElement(CdmFormFactory formFactory, ICdmFormElement formElement,
             Representation representation, TermBase term, Integer textHeight, int style, boolean fill) {
         super(formFactory, formElement, representation, term, textHeight, style, fill);
+        
 
     }
 
@@ -93,7 +95,7 @@ public class TranslatableRepresentationElement extends RepresentationElement {
     }
     @Override
     protected void createRepresentationEditingElements(ICdmFormElement formElement, int style) {
-        super.createRepresentationEditingElements(formElement, style);
+        super.createRepresentationEditingElements(formElement, style );
         button = formFactory.createButton(getLayoutComposite(),
                 "Open In Translation Editor", SWT.PUSH);
         addControl(button);
old mode 100644 (file)
new mode 100755 (executable)
index 571e4c6..6b6b36b
@@ -122,7 +122,6 @@ public class TermTranslationWizardPage extends WizardPage implements PropertyCha
             text_source = formFactory.createRepresentationElement(element, preferredRepresentation,term,  TEXT_HEIGHT,  SWT.NULL, true);
             text_source.setTerm(term, true);
 
-
         }
 
         /**
@@ -131,6 +130,7 @@ public class TermTranslationWizardPage extends WizardPage implements PropertyCha
          */
         private void createRightControls(ICdmFormElement element){
             text_target = formFactory.createRepresentationElement(element, null, term, TEXT_HEIGHT, SWT.NULL, false);
+            
         }
 
 
old mode 100644 (file)
new mode 100755 (executable)
index 7bd1765..08e6d80
@@ -1,6 +1,8 @@
 package eu.etaxonomy.taxeditor.view.dataimport;
 
 import java.io.IOException;
+import java.util.HashSet;
+import java.util.Set;
 
 import org.apache.http.client.ClientProtocolException;
 import org.apache.log4j.Logger;
@@ -89,7 +91,10 @@ public class DataImportEditorContextMenu extends CompoundContributionItem {
                                     public void handleEvent(Event event) {
                                         try{
                                             DataSetResponse response = new GbifQueryServiceWrapper().queryOriginalDataSet(gbifResponse);
-                                            final BioCaseEditorInput input = new BioCaseEditorInput(new OccurenceQuery(response.getUnitId()), response.getEndpoint());
+                                            Set<String[]> unitIds = new HashSet<String[]>();
+                                            String[] tripleId = {response.getUnitId()};
+                                            unitIds.add(tripleId);
+                                            final BioCaseEditorInput input = new BioCaseEditorInput(new OccurenceQuery(unitIds), response.getEndpoint());
                                            // EditorUtil.open(input);
                                             Job queryJob = new Job("Querying for original record...") {
 
index d6fd333526db5fa3198af583576bf6e7203b2893..df613bca39c9596a4ca0a82ac9a0d00277609c4f 100644 (file)
 package eu.etaxonomy.taxeditor.view.dataimport;
 
 import java.io.IOException;
+import java.io.InputStream;
 import java.net.URISyntaxException;
+import java.util.ArrayList;
 import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
 
 import org.apache.http.client.ClientProtocolException;
+import org.eclipse.core.runtime.jobs.Job;
 
+import eu.etaxonomy.cdm.ext.occurrence.bioCase.BioCaseQueryServiceWrapper;
+import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifDataSetProtocol;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifQueryServiceWrapper;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifResponse;
+import eu.etaxonomy.cdm.io.common.CdmDefaultImport;
+import eu.etaxonomy.cdm.io.common.IImportConfigurator.SOURCE_TYPE;
+import eu.etaxonomy.cdm.io.dwca.in.DwcaImportConfigurator;
+import eu.etaxonomy.cdm.model.occurrence.SpecimenOrObservationBase;
+import eu.etaxonomy.taxeditor.store.CdmStore;
 
 /**
  * @author pplitzner
@@ -48,16 +60,41 @@ public class GbifResponseImportView extends DataImportView<GbifResponse> {
     public void query() {
         String errorMessage = "Could not execute query " + query;
         try{
-            Collection<GbifResponse> results = new GbifQueryServiceWrapper().query(query);
-            setResults(results);
-        } catch (ClientProtocolException e) {
-            logger.error(errorMessage, e);
-        } catch (IOException e) {
-            logger.error(errorMessage, e);
-        } catch (URISyntaxException e) {
-            logger.error(errorMessage, e);
+            //Collection<GbifResponse> results = new GbifQueryServiceWrapper().query(query);
+            //setResults(results);
+            
+           // String errorMessage = "Could not execute query " + query;
+
+       //     Collection<SpecimenOrObservationBase<?>> results = new ArrayList<SpecimenOrObservationBase<?>>();
+                Collection<GbifResponse> results = new GbifQueryServiceWrapper().query(query);
+                               
+                setResults(results);
+               
+               
+//               
+               // results = repo.getUnits();
+                
+            } catch (ClientProtocolException e) {
+                logger.error(errorMessage, e);
+            } catch (IOException e) {
+                logger.error(errorMessage, e);
+            } catch (URISyntaxException e) {
+                               // TODO Auto-generated catch block
+                               e.printStackTrace();
+                       }
         }
 
-    }
+//            setResults(results);
+//
+//        }
+//        } catch (ClientProtocolException e) {
+//            logger.error(errorMessage, e);
+//        } catch (IOException e) {
+//            logger.error(errorMessage, e);
+//        } catch (URISyntaxException e) {
+//            logger.error(errorMessage, e);
+//        }
+
+  //  }
 
 }
index 99791e0798c60bca84f9fce652f4326aabd2367c..3ccef1a20abe60965c0561980aac0207dac19207 100644 (file)
@@ -1,6 +1,11 @@
 package eu.etaxonomy.taxeditor.view.dataimport;
 
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Set;
+
 import org.apache.log4j.Logger;
+import org.eclipse.core.runtime.jobs.Job;
 import org.eclipse.jface.action.Action;
 import org.eclipse.swt.widgets.Table;
 import org.eclipse.swt.widgets.TableItem;
@@ -11,7 +16,10 @@ import org.eclipse.ui.PlatformUI;
 import eu.etaxonomy.cdm.api.conversation.ConversationHolder;
 import eu.etaxonomy.cdm.api.service.IOccurrenceService;
 import eu.etaxonomy.cdm.api.service.ITermService;
+import eu.etaxonomy.cdm.ext.occurrence.OccurenceQuery;
+import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifDataSetProtocol;
 import eu.etaxonomy.cdm.ext.occurrence.gbif.GbifResponse;
+import eu.etaxonomy.cdm.io.dwca.in.DwcaImportConfigurator;
 import eu.etaxonomy.cdm.model.common.DefinedTermBase;
 import eu.etaxonomy.cdm.model.common.ICdmBase;
 import eu.etaxonomy.cdm.model.name.TaxonNameBase;
@@ -32,33 +40,39 @@ public class SaveImportedSpecimenAction extends Action {
         if(activePart instanceof DataImportView<?>){
             DataImportView<?> dataImportView = (DataImportView<?>)activePart;
             Table table = dataImportView.getTable();
+            Collection<GbifResponse> checkedResults = new HashSet<GbifResponse>();
+            Object data;
+            Set<String[]> unitIds = new HashSet<String[]>();
             for(TableItem item:table.getItems()){
                 if(item.getChecked()){
                     //Save Specimen
-                    Object data = item.getData();
-                    if(data instanceof GbifResponse){
-                        data = ((GbifResponse) item.getData()).getDerivedUnitFacade().innerFieldUnit();
-                    }
-                    if(data instanceof SpecimenOrObservationBase){
-                        ConversationHolder conversation = dataImportView.getConversationHolder();
-                        SpecimenOrObservationBase<?> specimen = (SpecimenOrObservationBase<?>) data;
-                        conversation.bind();
-                        IOccurrenceService occurrenceService = CdmStore.getService(IOccurrenceService.class);
-                        for(ICdmBase cdmEntity:occurrenceService.getNonCascadedAssociatedElements(specimen)){
-                            if(cdmEntity instanceof DefinedTermBase){
-                                persistTerm((DefinedTermBase<?>) cdmEntity, CdmStore.getService(ITermService.class), conversation);
-                            }
-                            else if(cdmEntity instanceof TaxonNameBase){
-                                //user interaction
-                            }
-                        }
-                        occurrenceService.saveOrUpdate(specimen);
-                        dataImportView.getConversationHolder().commit(true);
-                    }
+                        data = item.getData();
+                        if(data instanceof GbifResponse){
+                                checkedResults.add((GbifResponse)item.getData());
+                        }
+                }
+            }
+                for (GbifResponse response:checkedResults){
+                       if (response != null){
+                               System.err.println("response: " + response.getDataSetUri() + " " + response.getDataSetProtocol());
+                               
+                                       String[] tripleId = response.getTripleID();
+                                       unitIds.add(tripleId);
+                                       
+                       }
                 }
+                
+                DwcaImportConfigurator configurator = DwcaImportConfigurator.NewInstance(null, null);
+                OccurenceQuery query = new OccurenceQuery(unitIds);
+                configurator.setQuery(query);
+               
+                Job job = CdmStore.getImportManager().createIOServiceJob(configurator);
+                CdmStore.getImportManager().run(job);
+                
+                
             }
         }
-    }
 
     private void persistTerm(DefinedTermBase<?> term, ITermService termService, ConversationHolder conversation){
         if(term!=null){
old mode 100644 (file)
new mode 100755 (executable)
index c89e34e..c41636a
@@ -116,7 +116,7 @@ public class SpecimenSearchWizard extends Wizard implements IImportWizard {
                     try {
                        
                         dataImportView = (GbifResponseImportView) activePart.showView(GbifResponseImportView.ID, "query_"+query.toString().replaceAll(",", ""), IWorkbenchPage.VIEW_ACTIVATE);
-                                       
+                        dataImportView.setQuery(query);                
                                //      (GbifResponseImportView) activePart.showView(GbifResponseImportView.ID);getWorkbench().getActiveWorkbenchWindow().getActivePage()
                              // .showView(GbifResponseImportView.ID, "query_"+query.toString().replaceAll(",", ""),IWorkbenchPage.VIEW_ACTIVATE);