Project

General

Profile

« Previous | Next » 

Revision 5da1d38c

Added by Patrick Plitzner over 9 years ago

  • implemented unstable DataImportView which will replace DataImportEditor

View differences:

eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizard.java
19 19
import org.eclipse.swt.widgets.Display;
20 20
import org.eclipse.ui.IImportWizard;
21 21
import org.eclipse.ui.IWorkbench;
22
import org.eclipse.ui.IWorkbenchPage;
22 23
import org.eclipse.ui.PartInitException;
23 24

  
24 25
import eu.etaxonomy.cdm.ext.occurrence.OccurenceQuery;
25
import eu.etaxonomy.taxeditor.editor.EditorUtil;
26
import eu.etaxonomy.taxeditor.editor.internal.TaxeditorEditorPlugin;
26 27
import eu.etaxonomy.taxeditor.store.CdmStore;
27 28

  
28 29
/**
......
32 33
 *
33 34
 */
34 35
public class SpecimenSearchWizard extends Wizard implements IImportWizard {
35
    @SuppressWarnings("unused")
36 36
    private static final Logger logger = Logger.getLogger(SpecimenSearchWizard.class);
37 37

  
38 38
    private OccurenceQuery query = null;
......
59 59
        searchPage.getController().saveLastSate();
60 60
        providerSelectionPage.getController().saveLastState();
61 61

  
62
        DataImportEditorInput<?> input = null;
62
        DataImportView<?> dataImportView = null;
63 63
        query = searchPage.getQuery();
64
        switch (providerSelectionPage.getQueryType()) {
65
        case BIOCASE:
66
            input = new BioCaseEditorInput(query, providerSelectionPage.getEndPoint());
67
            break;
68
        case GBIF:
69
            input = new GbifImportEditorInput(query);
70
            break;
71
        }
72 64
        try {
73
            EditorUtil.open(input);
65
            switch (providerSelectionPage.getQueryType()) {
66
            case BIOCASE:
67
                SpecimenImportView specimenImportView = (SpecimenImportView) TaxeditorEditorPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage()
68
                        .showView(SpecimenImportView.ID, "query_"+query.toString().replaceAll(",", ""),IWorkbenchPage.VIEW_ACTIVATE);
69
                specimenImportView.setEndpoint(providerSelectionPage.getEndPoint());
70
                dataImportView = specimenImportView;
71
                break;
72
            case GBIF:
73
                dataImportView = (GbifResponseImportView) TaxeditorEditorPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage()
74
                .showView(GbifResponseImportView.ID, "query_"+query.toString().replaceAll(",", ""),IWorkbenchPage.VIEW_ACTIVATE);
75
                break;
76
            }
74 77
        } catch ( PartInitException e ) {
75
            //Put your exception handler here if you wish to
78
            logger.error("Could not open import view for query: " + query.toString(), e);
79
        }
80
        if(dataImportView!=null){
81
            dataImportView.setQuery(query);
82
//            dataImportView.query();
83
//            Display.getDefault().asyncExec(new Runnable() {
84
//
85
//                @Override
86
//                public void run() {
87
//                    CdmStore.getContextManager().notifyContextRefresh();
88
//                }
89
//            });
90
            Job queryJob = new QueryJob("Query specimen provider", dataImportView);
91
            queryJob.schedule();
76 92
        }
77
        Job queryJob = new QueryJob("Query specimen provider", input);
78
        queryJob.schedule();
79 93
        return true;
80 94
    }
81 95

  
......
99 113

  
100 114
    private class QueryJob extends Job{
101 115

  
102
        private final DataImportEditorInput<?> input;
116
        private final DataImportView<?> view;
103 117

  
104 118
        /**
105 119
         * @param name
106 120
         */
107
        public QueryJob(String name, DataImportEditorInput<?> input) {
121
        public QueryJob(String name, DataImportView<?> view) {
108 122
            super(name);
109
            this.input = input;
123
            this.view = view;
110 124
        }
111 125

  
112 126
        /* (non-Javadoc)
......
114 128
         */
115 129
        @Override
116 130
        protected IStatus run(IProgressMonitor monitor) {
117
            input.query();
131
            view.getConversationHolder().bind();
132
            view.query();
118 133
            Display.getDefault().asyncExec(new Runnable() {
119 134

  
120 135
                @Override

Also available in: Unified diff