Commit eae7b5f9038afa300c63dee9f51e88c8e84668cc

Authored by Nathanael Jourdane
1 parent 125adfc1
Exists in master

bugfix #1

src/main/java/eu/omp/irap/vespa/epntapclient/EpnTapController.java
... ... @@ -18,6 +18,7 @@ package eu.omp.irap.vespa.epntapclient;
18 18  
19 19 import java.util.HashMap;
20 20 import java.util.Map;
  21 +import java.util.logging.Level;
21 22 import java.util.logging.Logger;
22 23  
23 24 import eu.omp.irap.vespa.epntapclient.service.Queries;
... ... @@ -25,6 +26,7 @@ import eu.omp.irap.vespa.epntapclient.service.ServiceCore;
25 26 import eu.omp.irap.vespa.votable.Consts;
26 27 import eu.omp.irap.vespa.votable.controller.CantGetVOTableException;
27 28 import eu.omp.irap.vespa.votable.controller.VOTableController;
  29 +import eu.omp.irap.vespa.votable.votabledata.VOTableData;
28 30  
29 31 /**
30 32 * The main controller which manage views and controllers.
... ... @@ -52,8 +54,22 @@ public class EpnTapController {
52 54 * Method constructor, which initialize servicesController, resultsController and mainView.
53 55 */
54 56 public EpnTapController() {
55   - String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_CORE, ServiceCore.EPNCORE);
  57 + String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_CORE,
  58 + ServiceCore.EPNCORE);
56 59 servicesCtrl = new VOTableController(Consts.DEFAULT_REGISTRY_URL, query);
  60 + VOTableData data = servicesCtrl.getVOTableData();
  61 + }
  62 +
  63 + public void readServices() {
  64 + try {
  65 + servicesCtrl.readTable();
  66 + } catch (CantGetVOTableException e) {
  67 + displayError(e);
  68 + }
  69 + }
  70 +
  71 + public void displayError(Exception e) {
  72 + logger.log(Level.SEVERE, "Can not get services.", e);
57 73 }
58 74  
59 75 public String sendQuery(String query, String tableServiceURL)
... ...
src/main/java/eu/omp/irap/vespa/epntapclient/EpnTapMainApp.java
... ... @@ -55,8 +55,9 @@ public class EpnTapMainApp {
55 55 return;
56 56 }
57 57  
58   - GUIController ctrl = new GUIController();
59   - SwingUtilities.invokeLater(EpnTapMainApp.run(ctrl.getView(), "EPN-TAP client"));
  58 + GUIController guiCtrl = new GUIController();
  59 + guiCtrl.readServices();
  60 + SwingUtilities.invokeLater(EpnTapMainApp.run(guiCtrl.getView(), "EPN-TAP client"));
60 61 }
61 62  
62 63 private static Runnable run(final EpnTapMainView voTableView, final String title) {
... ...
src/main/java/eu/omp/irap/vespa/epntapclient/gui/GUIController.java
... ... @@ -23,6 +23,8 @@ import java.nio.file.Paths;
23 23 import java.util.logging.Level;
24 24 import java.util.logging.Logger;
25 25  
  26 +import javax.swing.JOptionPane;
  27 +
26 28 import eu.omp.irap.vespa.epntapclient.EpnTapController;
27 29 import eu.omp.irap.vespa.epntapclient.service.Queries;
28 30 import eu.omp.irap.vespa.votable.controller.CantGetVOTableException;
... ... @@ -49,6 +51,15 @@ public class GUIController extends EpnTapController implements ViewListener {
49 51 public GUIController() {
50 52 super();
51 53 mainView = new EpnTapMainView(this);
  54 + }
  55 +
  56 + @Override
  57 + public void readServices() {
  58 + try {
  59 + servicesCtrl.readTable();
  60 + } catch (CantGetVOTableException e) {
  61 + displayError(e);
  62 + }
52 63 mainView.getServicesPanel().fillTable(servicesCtrl.getVOTableData());
53 64 }
54 65  
... ... @@ -59,8 +70,9 @@ public class GUIController extends EpnTapController implements ViewListener {
59 70 /** Update the row selected by the user on the Services Panel. */
60 71 @Override
61 72 public void onServiceSelected(int selectedServiceRow) {
62   - mainView.getServicesPanel().getServiceURL(selectedServiceRow);
63   - mainView.getServicesPanel().getTableName(selectedServiceRow);
  73 + String url = mainView.getServicesPanel().getServiceURL(selectedServiceRow);
  74 + String tableName = mainView.getServicesPanel().getTableName(selectedServiceRow);
  75 + updateService(url, tableName);
64 76 }
65 77  
66 78 /** Send the specified query on selectedTableServiceURL */
... ... @@ -76,6 +88,12 @@ public class GUIController extends EpnTapController implements ViewListener {
76 88 }
77 89 }
78 90  
  91 + @Override
  92 + public void displayError(Exception e) {
  93 + JOptionPane.showMessageDialog(mainView, "Error", e.getMessage(), JOptionPane.ERROR_MESSAGE,
  94 + null);
  95 + }
  96 +
79 97 /** Copy the VOTable to a specified location. */
80 98 @Override
81 99 public void onDownloadButtonClicked(File outputFile) {
... ... @@ -92,7 +110,7 @@ public class GUIController extends EpnTapController implements ViewListener {
92 110 /** Update a query parameter in the parameter list. */
93 111 @Override
94 112 public void onParameterChanged(String paramName, Object paramValue) {
95   - updateParameter(paramName, paramName);
  113 + updateParameter(paramName, paramValue);
96 114 updateQueryArea();
97 115 GUIController.logger.info("uploaded " + paramName + ": " + paramValue);
98 116 }
... ...