From 6ebea0b942324dd6351efee89b3eb6a88bdf5b67 Mon Sep 17 00:00:00 2001
From: Patric Plitzner
Date: Thu, 3 Jul 2014 08:36:10 +0000
Subject: [PATCH] - reload last entered access point in wizard space - added
validation to access point text field
---
.../SpecimenProviderSelectionWizardPage.java | 50 ++++++++++++++++++-
.../view/dataimport/SpecimenSearchWizard.java | 5 +-
2 files changed, 52 insertions(+), 3 deletions(-)
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenProviderSelectionWizardPage.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenProviderSelectionWizardPage.java
index 5657686e3..fae847394 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenProviderSelectionWizardPage.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenProviderSelectionWizardPage.java
@@ -9,6 +9,11 @@
*/
package eu.etaxonomy.taxeditor.editor.view.dataimport;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.net.URL;
+
import org.eclipse.jface.wizard.WizardPage;
import org.eclipse.swt.widgets.Composite;
@@ -24,6 +29,7 @@ import eu.etaxonomy.taxeditor.view.specimenSearch.SpecimenProviderSelectionContr
public class SpecimenProviderSelectionWizardPage extends WizardPage{
private SpecimenProviderSelectionController specimenProviderSelectionController;
+ private URI endPoint;
protected SpecimenProviderSelectionWizardPage(String pageName) {
super(pageName);
@@ -37,7 +43,7 @@ public class SpecimenProviderSelectionWizardPage extends WizardPage{
*/
@Override
public void createControl(Composite parent) {
- specimenProviderSelectionController = new SpecimenProviderSelectionController(parent);
+ specimenProviderSelectionController = SpecimenProviderSelectionController.getInstance(parent, getWizard());
setControl(specimenProviderSelectionController.getComposite());
}
@@ -50,4 +56,46 @@ public class SpecimenProviderSelectionWizardPage extends WizardPage{
}
}
+ /**
+ * @return
+ * @throws URISyntaxException
+ */
+ public URI getEndPoint() {
+ return endPoint;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.wizard.WizardPage#isPageComplete()
+ */
+ @Override
+ public boolean isPageComplete() {
+ if(specimenProviderSelectionController.getComposite().getBtnBioCaseProvider().getSelection()){
+ endPoint = null;
+ try {
+ endPoint = new URL(specimenProviderSelectionController.getComposite().getTxtAccessPoint().getText()).toURI();
+ this.setErrorMessage(null);
+ return true;
+ } catch (MalformedURLException e) {
+ setErrorMessage("A valid URL has to be entered.");
+ return false;
+ } catch (URISyntaxException e) {
+ setErrorMessage("A valid URL has to be entered.");
+ return false;
+ }
+ }
+ else if(specimenProviderSelectionController.getComposite().getBtnGbif().getSelection()){
+ this.setErrorMessage(null);
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * @return
+ */
+ public SpecimenProviderSelectionController getController() {
+ return specimenProviderSelectionController;
+ }
+
+
}
diff --git a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizard.java b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizard.java
index 412b991dd..a2a21f965 100644
--- a/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizard.java
+++ b/eu.etaxonomy.taxeditor.editor/src/main/java/eu/etaxonomy/taxeditor/editor/view/dataimport/SpecimenSearchWizard.java
@@ -57,12 +57,13 @@ public class SpecimenSearchWizard extends Wizard implements IImportWizard {
@Override
public boolean performFinish() {
searchPage.getController().saveLastSate();
-
+ providerSelectionPage.getController().saveLastState();
+
DataImportEditorInput> input = null;
query = searchPage.getQuery();
switch (providerSelectionPage.getQueryType()) {
case BIOCASE:
- input = new BioCaseEditorInput(query, null);
+ input = new BioCaseEditorInput(query, providerSelectionPage.getEndPoint());
break;
case GBIF:
input = new GbifImportEditorInput(query);
--
2.34.1