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/QueryType.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/SpecimenProviderSelectionWizardPage.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.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewPart.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/detail/DetailsViewer.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/reporting/ReportingViewPart.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenProviderSelectionComposite.java -text
+eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenProviderSelectionController.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenSearchComposite.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/specimenSearch/SpecimenSearchController.java -text
eu.etaxonomy.taxeditor.store/src/main/java/eu/etaxonomy/taxeditor/view/supplementaldata/SupplementalDataViewPart.java -text
--- /dev/null
+// $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;
+
+/**
+ * Enumeration of possible specimen provider types
+ * @author pplitzner
+ * @date 22.05.2014
+ *
+ */
+public enum QueryType {
+ GBIF,
+ BIOCASE
+}
public class SpecimenImportEditorInput extends DataImportEditorInput<SpecimenOrObservationBase<?>> {
private final OccurenceQuery query;
+ private final QueryType queryType;
/**
* @param results
*/
- public SpecimenImportEditorInput(OccurenceQuery query) {
+ public SpecimenImportEditorInput(OccurenceQuery query, QueryType queryType) {
super();
this.query = query;
+ this.queryType = queryType;
}
public void query(){
--- /dev/null
+// $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.jface.wizard.WizardPage;
+import org.eclipse.swt.widgets.Composite;
+
+import eu.etaxonomy.taxeditor.view.specimenSearch.SpecimenProviderSelectionController;
+
+
+/**
+ * Wizard page for selecting the specimen provider
+ * @author pplitzner
+ * @date 12.09.2013
+ *
+ */
+public class SpecimenProviderSelectionWizardPage extends WizardPage{
+
+ private SpecimenProviderSelectionController specimenProviderSelectionController;
+
+ protected SpecimenProviderSelectionWizardPage(String pageName) {
+ super(pageName);
+ setTitle("Select Specimen Provider");
+ setDescription("Select the provider to query for specimens.\nTo query a BioCASE " +
+ "provider the access point URL must be entered.");
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite)
+ */
+ @Override
+ public void createControl(Composite parent) {
+ specimenProviderSelectionController = new SpecimenProviderSelectionController(parent);
+ setControl(specimenProviderSelectionController.getComposite());
+ }
+
+ public QueryType getQueryType(){
+ if(specimenProviderSelectionController.getComposite().getBtnBioCaseProvider().getSelection()){
+ return QueryType.BIOCASE;
+ }
+ else {// if(specimenProviderSelectionController.getComposite().getBtnGbif().getSelection()){
+ return QueryType.GBIF;
+ }
+ }
+
+}
private OccurenceQuery query = null;
private SpecimenSearchWizardPage searchPage;
+ private SpecimenProviderSelectionWizardPage providerSelectionPage;
/**
* Creates a new SpecimenSearchWizard
final IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
query = searchPage.getQuery();
- final SpecimenImportEditorInput input = new SpecimenImportEditorInput(query);
+ final SpecimenImportEditorInput input = new SpecimenImportEditorInput(query, providerSelectionPage.getQueryType());
Job queryJob = new Job("Query specimen provider") {
@Override
@Override
public void addPages() {
addPage(searchPage);
+ addPage(providerSelectionPage);
}
/* (non-Javadoc)
@Override
public void init(IWorkbench workbench, IStructuredSelection selection) {
searchPage = new SpecimenSearchWizardPage("Specimen Search");
- }
-
- /**
- * Return a {@link OccurenceQuery} with the parameters entered in the wizard
- * @return the query
- */
- public OccurenceQuery getQuery() {
- return query;
+ providerSelectionPage = new SpecimenProviderSelectionWizardPage("Select specimen provider");
}
}
--- /dev/null
+// $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.view.specimenSearch;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.forms.widgets.TableWrapData;
+import org.eclipse.ui.forms.widgets.TableWrapLayout;
+
+/**
+ * @author pplitzner
+ * @date 22.05.2014
+ *
+ */
+public class SpecimenProviderSelectionComposite extends Composite {
+
+ private final FormToolkit toolkit = new FormToolkit(Display.getCurrent());
+ private final Text txtAccessPoint;
+ private final Button btnGbif;
+ private final Button btnBioCaseProvider;
+ private final Label lblAccessPointUrl;
+
+ /**
+ * Create the composite.
+ * @param parent
+ * @param style
+ */
+ public SpecimenProviderSelectionComposite(Composite parent, int style) {
+ super(parent, style);
+ addDisposeListener(new DisposeListener() {
+ @Override
+ public void widgetDisposed(DisposeEvent e) {
+ toolkit.dispose();
+ }
+ });
+ toolkit.adapt(this);
+ toolkit.paintBordersFor(this);
+ {
+ TableWrapLayout tableWrapLayout = new TableWrapLayout();
+ tableWrapLayout.numColumns = 2;
+ setLayout(tableWrapLayout);
+ }
+
+ btnGbif = new Button(this, SWT.RADIO);
+ toolkit.adapt(btnGbif, true, true);
+ btnGbif.setText("GBIF");
+ new Label(this, SWT.NONE);
+
+ btnBioCaseProvider = new Button(this, SWT.RADIO);
+ toolkit.adapt(btnBioCaseProvider, true, true);
+ btnBioCaseProvider.setText("BioCASE Provider");
+ new Label(this, SWT.NONE);
+
+ txtAccessPoint = new Text(this, SWT.BORDER);
+ txtAccessPoint.setLayoutData(new TableWrapData(TableWrapData.FILL_GRAB, TableWrapData.TOP, 1, 1));
+ toolkit.adapt(txtAccessPoint, true, true);
+
+ lblAccessPointUrl = new Label(this, SWT.NONE);
+ lblAccessPointUrl.setLayoutData(new TableWrapData(TableWrapData.LEFT, TableWrapData.MIDDLE, 1, 1));
+ toolkit.adapt(lblAccessPointUrl, true, true);
+ lblAccessPointUrl.setText("Access Point URL");
+
+ }
+
+ public Button getBtnGbif() {
+ return btnGbif;
+ }
+ public Button getBtnBioCaseProvider() {
+ return btnBioCaseProvider;
+ }
+ public Text getTxtAccessPoint() {
+ return txtAccessPoint;
+ }
+ public Label getLblAccessPointUrl() {
+ return lblAccessPointUrl;
+ }
+}
--- /dev/null
+// $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.view.specimenSearch;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+/**
+ * Controller class for handling {@link SpecimenProviderSelectionComposite}
+ * @author pplitzner
+ * @date 22.05.2014
+ *
+ */
+public class SpecimenProviderSelectionController implements Listener{
+
+ private final SpecimenProviderSelectionComposite composite;
+
+ /**
+ * Constructs a new controller which will itself construct the composite
+ * @param parent the parent {@link Composite} for the one handles by this controller
+ */
+ public SpecimenProviderSelectionController(Composite parent) {
+ composite = new SpecimenProviderSelectionComposite(parent, SWT.NONE);
+ composite.addListener(SWT.SELECTED, this);
+ composite.getTxtAccessPoint().setEnabled(false);
+ composite.getLblAccessPointUrl().setEnabled(false);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
+ */
+ @Override
+ public void handleEvent(Event event) {
+ if(event.widget==composite.getBtnBioCaseProvider()){
+ composite.getTxtAccessPoint().setEnabled(true);
+ composite.getLblAccessPointUrl().setEnabled(true);
+ }
+ else if(event.widget==composite.getBtnGbif()){
+ composite.getLblAccessPointUrl().setEnabled(false);
+ composite.getTxtAccessPoint().setEnabled(false);
+ }
+ }
+
+ /**
+ * @return the composite
+ */
+ public SpecimenProviderSelectionComposite getComposite() {
+ return composite;
+ }
+
+}
private final SpecimenSearchComposite specimenSearchComposite;
/**
- * @param specimenSearchComposite
+ * Constructs a new controller which will itself construct the composite
+ * @param parent the parent {@link Composite} for the one handles by this controller
*/
public SpecimenSearchController(Composite parent) {
this.specimenSearchComposite = new SpecimenSearchComposite(parent, SWT.NONE);