Commit 0d36b4b03408a493f01e4fd375ad2dd765f2689c
1 parent
45faaeff
Exists in
master
Use RequestPanelCtrl to manage the request view.
Showing
17 changed files
with
217 additions
and
181 deletions
Show diff stats
src/main/java/eu/omp/irap/vespa/epntapclient/EpnTapController.java
@@ -16,8 +16,6 @@ | @@ -16,8 +16,6 @@ | ||
16 | 16 | ||
17 | package eu.omp.irap.vespa.epntapclient; | 17 | package eu.omp.irap.vespa.epntapclient; |
18 | 18 | ||
19 | -import java.util.HashMap; | ||
20 | -import java.util.Map; | ||
21 | import java.util.logging.Level; | 19 | import java.util.logging.Level; |
22 | import java.util.logging.Logger; | 20 | import java.util.logging.Logger; |
23 | 21 | ||
@@ -38,15 +36,14 @@ public class EpnTapController { | @@ -38,15 +36,14 @@ public class EpnTapController { | ||
38 | private static final Logger logger = Logger.getLogger(EpnTapController.class.getName()); | 36 | private static final Logger logger = Logger.getLogger(EpnTapController.class.getName()); |
39 | 37 | ||
40 | /** The controller of the VOTable displaying the list of services. */ | 38 | /** The controller of the VOTable displaying the list of services. */ |
41 | - protected VOTableController servicesCtrl; | 39 | + private VOTableController servicesCtrl; |
42 | 40 | ||
43 | /** The controller of the VOTable displaying the result. */ | 41 | /** The controller of the VOTable displaying the result. */ |
44 | - protected VOTableController resultsCtrl; | 42 | + private VOTableController resultsCtrl; |
45 | 43 | ||
46 | - /** | ||
47 | - * The parameters fields for the request. | ||
48 | - */ | ||
49 | - protected Map<String, Object> paramValues = new HashMap<>(); | 44 | + private RequestCtrl requestCtrl; |
45 | + | ||
46 | + private String voTablePath; | ||
50 | 47 | ||
51 | 48 | ||
52 | /** | 49 | /** |
@@ -56,6 +53,7 @@ public class EpnTapController { | @@ -56,6 +53,7 @@ public class EpnTapController { | ||
56 | String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_CORE, | 53 | String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_CORE, |
57 | ServiceCore.EPNCORE); | 54 | ServiceCore.EPNCORE); |
58 | servicesCtrl = new VOTableController(Consts.DEFAULT_REGISTRY_URL, query); | 55 | servicesCtrl = new VOTableController(Consts.DEFAULT_REGISTRY_URL, query); |
56 | + requestCtrl = new RequestCtrl(this); | ||
59 | } | 57 | } |
60 | 58 | ||
61 | /** | 59 | /** |
@@ -89,11 +87,11 @@ public class EpnTapController { | @@ -89,11 +87,11 @@ public class EpnTapController { | ||
89 | * path. | 87 | * path. |
90 | * @throws CantGetVOTableException Can not get the VOTable. | 88 | * @throws CantGetVOTableException Can not get the VOTable. |
91 | */ | 89 | */ |
92 | - public String sendQuery(String query, String tableServiceURL) | 90 | + public void sendQuery(String query, String tableServiceURL) |
93 | throws CantGetVOTableException { | 91 | throws CantGetVOTableException { |
94 | resultsCtrl = new VOTableController(tableServiceURL, query); | 92 | resultsCtrl = new VOTableController(tableServiceURL, query); |
95 | resultsCtrl.readTable(); | 93 | resultsCtrl.readTable(); |
96 | - return resultsCtrl.getVOTablePath(); | 94 | + voTablePath = resultsCtrl.getVOTablePath(); |
97 | } | 95 | } |
98 | 96 | ||
99 | /** | 97 | /** |
@@ -110,31 +108,8 @@ public class EpnTapController { | @@ -110,31 +108,8 @@ public class EpnTapController { | ||
110 | return servicesCtrl; | 108 | return servicesCtrl; |
111 | } | 109 | } |
112 | 110 | ||
113 | - /** | ||
114 | - * Update a specified parameter | ||
115 | - * | ||
116 | - * @param paramName The name of the parameter. | ||
117 | - * @param paramValue The new value of the parameter | ||
118 | - */ | ||
119 | - public void updateParameter(String paramName, Object paramValue) { | ||
120 | - paramValues.put(paramName, paramValue); | 111 | + public RequestCtrl getRequestPanelCtrl() { |
112 | + return requestCtrl; | ||
121 | } | 113 | } |
122 | 114 | ||
123 | - /** | ||
124 | - * Remove a specified parameter. | ||
125 | - * | ||
126 | - * @param paramName the name of the parameter. | ||
127 | - */ | ||
128 | - public void removeParameter(String paramName) { | ||
129 | - paramValues.remove(paramName); | ||
130 | - } | ||
131 | - | ||
132 | - /** | ||
133 | - * Get the values of all the parameters. | ||
134 | - * | ||
135 | - * @return A map containing all the values, as couples <key, value>. | ||
136 | - */ | ||
137 | - public Map<String, Object> getParamValues() { | ||
138 | - return paramValues; | ||
139 | - } | ||
140 | } | 115 | } |
src/main/java/eu/omp/irap/vespa/epntapclient/EpnTapMainApp.java
@@ -23,7 +23,7 @@ import javax.swing.SwingUtilities; | @@ -23,7 +23,7 @@ import javax.swing.SwingUtilities; | ||
23 | 23 | ||
24 | import com.google.gson.Gson; | 24 | import com.google.gson.Gson; |
25 | 25 | ||
26 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.MainPanelController; | 26 | +import eu.omp.irap.vespa.epntapclient.gui.mainPanel.MainPanelCtrl; |
27 | import eu.omp.irap.vespa.epntapclient.gui.mainPanel.MainPanelView; | 27 | import eu.omp.irap.vespa.epntapclient.gui.mainPanel.MainPanelView; |
28 | 28 | ||
29 | /** | 29 | /** |
@@ -56,7 +56,7 @@ public class EpnTapMainApp { | @@ -56,7 +56,7 @@ public class EpnTapMainApp { | ||
56 | return; | 56 | return; |
57 | } | 57 | } |
58 | 58 | ||
59 | - MainPanelController guiCtrl = new MainPanelController(); | 59 | + MainPanelCtrl guiCtrl = new MainPanelCtrl(); |
60 | guiCtrl.readServices(); | 60 | guiCtrl.readServices(); |
61 | SwingUtilities.invokeLater(EpnTapMainApp.run(guiCtrl.getView(), "EPN-TAP client")); | 61 | SwingUtilities.invokeLater(EpnTapMainApp.run(guiCtrl.getView(), "EPN-TAP client")); |
62 | } | 62 | } |
src/main/java/eu/omp/irap/vespa/epntapclient/RequestCtrl.java
@@ -40,14 +40,17 @@ public class RequestCtrl { | @@ -40,14 +40,17 @@ public class RequestCtrl { | ||
40 | /** The URL of the resolver used for the `target name` field. */ | 40 | /** The URL of the resolver used for the `target name` field. */ |
41 | private static final String RESOLVER_URL = "http://voparis-registry.obspm.fr/ssodnet/1/autocomplete"; | 41 | private static final String RESOLVER_URL = "http://voparis-registry.obspm.fr/ssodnet/1/autocomplete"; |
42 | 42 | ||
43 | - /** | ||
44 | - * The parameters fields for the request. | ||
45 | - */ | 43 | + /** The parameters fields for the request. */ |
46 | protected Map<String, Object> paramValues = new HashMap<>(); | 44 | protected Map<String, Object> paramValues = new HashMap<>(); |
47 | 45 | ||
46 | + private EpnTapController epnTapCtrl; | ||
47 | + | ||
48 | 48 | ||
49 | public RequestCtrl() { | 49 | public RequestCtrl() { |
50 | + } | ||
50 | 51 | ||
52 | + public RequestCtrl(EpnTapController epnTapCtrl) { | ||
53 | + this.epnTapCtrl = epnTapCtrl; | ||
51 | } | 54 | } |
52 | 55 | ||
53 | /** | 56 | /** |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/mainPanel/MainPanelController.java renamed to src/main/java/eu/omp/irap/vespa/epntapclient/gui/mainPanel/MainPanelCtrl.java
@@ -26,49 +26,90 @@ import java.util.logging.Logger; | @@ -26,49 +26,90 @@ import java.util.logging.Logger; | ||
26 | import javax.swing.JOptionPane; | 26 | import javax.swing.JOptionPane; |
27 | 27 | ||
28 | import eu.omp.irap.vespa.epntapclient.EpnTapController; | 28 | import eu.omp.irap.vespa.epntapclient.EpnTapController; |
29 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelCtrl; | ||
29 | import eu.omp.irap.vespa.epntapclient.service.Queries; | 30 | import eu.omp.irap.vespa.epntapclient.service.Queries; |
31 | +import eu.omp.irap.vespa.epntapclient.service.ServiceCore; | ||
32 | +import eu.omp.irap.vespa.votable.Consts; | ||
30 | import eu.omp.irap.vespa.votable.controller.CantGetVOTableException; | 33 | import eu.omp.irap.vespa.votable.controller.CantGetVOTableException; |
34 | +import eu.omp.irap.vespa.votable.controller.VOTableController; | ||
31 | 35 | ||
32 | /** | 36 | /** |
33 | * @author N. Jourdane | 37 | * @author N. Jourdane |
34 | */ | 38 | */ |
35 | -public class MainPanelController extends EpnTapController implements ViewListener { | 39 | +public class MainPanelCtrl extends EpnTapController implements ViewListener { |
36 | 40 | ||
37 | /** The logger for the class GUIController. */ | 41 | /** The logger for the class GUIController. */ |
38 | - private static final Logger logger = Logger.getLogger(MainPanelController.class.getName()); | 42 | + private static final Logger logger = Logger.getLogger(MainPanelCtrl.class.getName()); |
43 | + | ||
44 | + private RequestPanelCtrl requestPanelCtrl; | ||
45 | + | ||
46 | + private VOTableController servicesPanelCtrl; | ||
47 | + | ||
48 | + private VOTableController resultPanelCtrl; | ||
39 | 49 | ||
40 | private MainPanelView mainView; | 50 | private MainPanelView mainView; |
41 | 51 | ||
42 | private String voTablePath; | 52 | private String voTablePath; |
43 | 53 | ||
54 | + // TODO: ร dรฉplacer dans ServicePanelCtrl | ||
55 | + | ||
44 | /** The name of the table selected by the user on the table list panel. */ | 56 | /** The name of the table selected by the user on the table list panel. */ |
45 | private String selectedTableName; | 57 | private String selectedTableName; |
46 | 58 | ||
47 | /** The URL of the service corresponding to the selected table. */ | 59 | /** The URL of the service corresponding to the selected table. */ |
48 | - private String selectedTableServiceURL; | 60 | + private String selectedServiceURL; |
49 | 61 | ||
50 | private int nbMaxResult = 10; | 62 | private int nbMaxResult = 10; |
51 | 63 | ||
52 | 64 | ||
53 | - public MainPanelController() { | ||
54 | - super(); | 65 | + public MainPanelCtrl() { |
66 | + String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_CORE, | ||
67 | + ServiceCore.EPNCORE); | ||
68 | + servicesPanelCtrl = new VOTableController(Consts.DEFAULT_REGISTRY_URL, query); | ||
69 | + resultPanelCtrl = new VOTableController(); | ||
70 | + requestPanelCtrl = new RequestPanelCtrl(this); | ||
55 | mainView = new MainPanelView(this); | 71 | mainView = new MainPanelView(this); |
56 | } | 72 | } |
57 | 73 | ||
58 | @Override | 74 | @Override |
59 | public void readServices() { | 75 | public void readServices() { |
60 | try { | 76 | try { |
61 | - servicesCtrl.readTable(); | 77 | + servicesPanelCtrl.readTable(); |
62 | } catch (CantGetVOTableException e) { | 78 | } catch (CantGetVOTableException e) { |
63 | displayError("Can not get services.", e); | 79 | displayError("Can not get services.", e); |
64 | } | 80 | } |
65 | - mainView.getServicesPanel().fillTable(servicesCtrl.getVOTableData()); | 81 | + mainView.getServicesPanel().fillTable(servicesPanelCtrl.getVOTableData()); |
82 | + } | ||
83 | + | ||
84 | + public void sendQuery(String query) { | ||
85 | + logger.info("Sending query: " + query + " on " + selectedServiceURL); | ||
86 | + try { | ||
87 | + resultPanelCtrl.updateVOTable(selectedServiceURL, query); | ||
88 | + voTablePath = resultPanelCtrl.getVOTablePath(); | ||
89 | + mainView.getResultsPanel().fillTable(resultPanelCtrl.getVOTableData()); | ||
90 | + } catch (CantGetVOTableException e) { | ||
91 | + displayError("Can not send the query.", e); | ||
92 | + MainPanelCtrl.logger.log(Level.WARNING, "Can not send query.", e); | ||
93 | + } | ||
94 | + } | ||
95 | + | ||
96 | + @Override | ||
97 | + public RequestPanelCtrl getRequestPanelCtrl() { | ||
98 | + return requestPanelCtrl; | ||
66 | } | 99 | } |
67 | 100 | ||
68 | public MainPanelView getView() { | 101 | public MainPanelView getView() { |
69 | return mainView; | 102 | return mainView; |
70 | } | 103 | } |
71 | 104 | ||
105 | + public String getSelectedTableName() { | ||
106 | + return selectedTableName; | ||
107 | + } | ||
108 | + | ||
109 | + public String getSelectedServiceURL() { | ||
110 | + return selectedServiceURL; | ||
111 | + } | ||
112 | + | ||
72 | /** Update the row selected by the user on the Services Panel. */ | 113 | /** Update the row selected by the user on the Services Panel. */ |
73 | @Override | 114 | @Override |
74 | public void onServiceSelected(int selectedServiceRow) { | 115 | public void onServiceSelected(int selectedServiceRow) { |
@@ -77,20 +118,6 @@ public class MainPanelController extends EpnTapController implements ViewListene | @@ -77,20 +118,6 @@ public class MainPanelController extends EpnTapController implements ViewListene | ||
77 | updateService(url, tableName); | 118 | updateService(url, tableName); |
78 | } | 119 | } |
79 | 120 | ||
80 | - /** Send the specified query on selectedTableServiceURL */ | ||
81 | - @Override | ||
82 | - public void onSendButtonClicked(String query) { | ||
83 | - MainPanelController.logger.info("Sending query: " + query + " on " + selectedTableServiceURL); | ||
84 | - try { | ||
85 | - voTablePath = sendQuery(query, selectedTableServiceURL); | ||
86 | - } catch (CantGetVOTableException e) { | ||
87 | - displayError("Can not send the query.", e); | ||
88 | - MainPanelController.logger.log(Level.WARNING, "Can not send query.", e); | ||
89 | - } | ||
90 | - | ||
91 | - mainView.getResultsPanel().fillTable(resultsCtrl.getVOTableData()); | ||
92 | - } | ||
93 | - | ||
94 | @Override | 121 | @Override |
95 | public void displayError(String message, Exception e) { | 122 | public void displayError(String message, Exception e) { |
96 | logger.log(Level.SEVERE, message, e); | 123 | logger.log(Level.SEVERE, message, e); |
@@ -106,41 +133,17 @@ public class MainPanelController extends EpnTapController implements ViewListene | @@ -106,41 +133,17 @@ public class MainPanelController extends EpnTapController implements ViewListene | ||
106 | // TODO create exception | 133 | // TODO create exception |
107 | mainView.displayError("Can not save the file.", | 134 | mainView.displayError("Can not save the file.", |
108 | "Check that you can write on the specified directory."); | 135 | "Check that you can write on the specified directory."); |
109 | - MainPanelController.logger.log(Level.WARNING, "Can not save the file.", e); | 136 | + MainPanelCtrl.logger.log(Level.WARNING, "Can not save the file.", e); |
110 | } | 137 | } |
111 | } | 138 | } |
112 | 139 | ||
113 | - /** Update a query parameter in the parameter list. */ | ||
114 | - @Override | ||
115 | - public void onParameterChanged(String paramName, Object paramValue) { | ||
116 | - updateParameter(paramName, paramValue); | ||
117 | - updateQueryArea(); | ||
118 | - MainPanelController.logger.info("uploaded " + paramName + ": " + paramValue); | ||
119 | - } | ||
120 | - | ||
121 | - /** Remove a query parameter from the parameters list. */ | ||
122 | - @Override | ||
123 | - public void onParameterRemoved(String paramName) { | ||
124 | - removeParameter(paramName); | ||
125 | - updateQueryArea(); | ||
126 | - MainPanelController.logger.info("removed " + paramName); | ||
127 | - } | ||
128 | - | ||
129 | - /** | ||
130 | - * Update the query area with a working ADQL query, based on the parameters list. | ||
131 | - */ | ||
132 | - private void updateQueryArea() { | ||
133 | - String query = Queries.getQuery(selectedTableName, paramValues, getNbMaxResult()); | ||
134 | - mainView.getRequestPanel().updateQueryArea(query); | ||
135 | - } | ||
136 | - | ||
137 | /** | 140 | /** |
138 | * @return the nb max of result | 141 | * @return the nb max of result |
139 | */ | 142 | */ |
140 | public int getNbMaxResult() { | 143 | public int getNbMaxResult() { |
141 | return nbMaxResult; | 144 | return nbMaxResult; |
142 | } | 145 | } |
143 | - | 146 | + |
144 | /** | 147 | /** |
145 | * set the nb max of result for a query | 148 | * set the nb max of result for a query |
146 | */ | 149 | */ |
@@ -150,11 +153,11 @@ public class MainPanelController extends EpnTapController implements ViewListene | @@ -150,11 +153,11 @@ public class MainPanelController extends EpnTapController implements ViewListene | ||
150 | 153 | ||
151 | public void updateService(String serviceURL, String tableName) { | 154 | public void updateService(String serviceURL, String tableName) { |
152 | if (!tableName.equals(selectedTableName)) { | 155 | if (!tableName.equals(selectedTableName)) { |
153 | - selectedTableServiceURL = serviceURL; | 156 | + selectedServiceURL = serviceURL; |
154 | selectedTableName = tableName; | 157 | selectedTableName = tableName; |
155 | - updateQueryArea(); | ||
156 | - MainPanelController.logger.info("Selected table: " + selectedTableName + " - service: " | ||
157 | - + selectedTableServiceURL); | 158 | + requestPanelCtrl.updateQueryArea(); |
159 | + MainPanelCtrl.logger.info("Selected table: " + selectedTableName + " - service: " | ||
160 | + + selectedServiceURL); | ||
158 | } | 161 | } |
159 | } | 162 | } |
160 | 163 |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/mainPanel/MainPanelView.java
@@ -38,7 +38,7 @@ public class MainPanelView extends JPanel { | @@ -38,7 +38,7 @@ public class MainPanelView extends JPanel { | ||
38 | private static final long serialVersionUID = 1L; | 38 | private static final long serialVersionUID = 1L; |
39 | 39 | ||
40 | /** The JPanel where the VOTable results is displayed. */ | 40 | /** The JPanel where the VOTable results is displayed. */ |
41 | - private ResultPanelView resultsPanel; | 41 | + private ResultPanelView resultPanel; |
42 | 42 | ||
43 | /** The JPanel where the list of services is displayed. */ | 43 | /** The JPanel where the list of services is displayed. */ |
44 | private ServicesPanelView servicesPanel; | 44 | private ServicesPanelView servicesPanel; |
@@ -54,10 +54,10 @@ public class MainPanelView extends JPanel { | @@ -54,10 +54,10 @@ public class MainPanelView extends JPanel { | ||
54 | * @param voTableResultsView The view to put in the results panel, built by ResultsController. | 54 | * @param voTableResultsView The view to put in the results panel, built by ResultsController. |
55 | */ | 55 | */ |
56 | 56 | ||
57 | - public MainPanelView(ViewListener viewListener) { | ||
58 | - servicesPanel = new ServicesPanelView(viewListener); | ||
59 | - resultsPanel = new ResultPanelView(viewListener); | ||
60 | - requestPanel = new RequestPanelView(viewListener); | 57 | + public MainPanelView(MainPanelCtrl mainPanelCtrl) { |
58 | + servicesPanel = new ServicesPanelView(mainPanelCtrl); | ||
59 | + resultPanel = new ResultPanelView(mainPanelCtrl); | ||
60 | + requestPanel = mainPanelCtrl.getRequestPanelCtrl().getView(); | ||
61 | buildMainView(); | 61 | buildMainView(); |
62 | } | 62 | } |
63 | 63 | ||
@@ -69,7 +69,7 @@ public class MainPanelView extends JPanel { | @@ -69,7 +69,7 @@ public class MainPanelView extends JPanel { | ||
69 | 69 | ||
70 | JSplitPane northPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, servicesPanel, | 70 | JSplitPane northPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, servicesPanel, |
71 | requestPanel); | 71 | requestPanel); |
72 | - JSplitPane mainPanel = new JSplitPane(JSplitPane.VERTICAL_SPLIT, northPanel, resultsPanel); | 72 | + JSplitPane mainPanel = new JSplitPane(JSplitPane.VERTICAL_SPLIT, northPanel, resultPanel); |
73 | 73 | ||
74 | add(mainPanel, BorderLayout.CENTER); | 74 | add(mainPanel, BorderLayout.CENTER); |
75 | 75 | ||
@@ -88,10 +88,10 @@ public class MainPanelView extends JPanel { | @@ -88,10 +88,10 @@ public class MainPanelView extends JPanel { | ||
88 | requestPanel.setMinimumSize( | 88 | requestPanel.setMinimumSize( |
89 | new Dimension(GUIDim.RIGHT_PANEL_MIN_WIDTH, GUIDim.TOP_PANEL_MIN_HEIGHT)); | 89 | new Dimension(GUIDim.RIGHT_PANEL_MIN_WIDTH, GUIDim.TOP_PANEL_MIN_HEIGHT)); |
90 | 90 | ||
91 | - resultsPanel.setPreferredSize( | 91 | + resultPanel.setPreferredSize( |
92 | new Dimension(GUIDim.LEFT_PANEL_MIN_WIDTH + GUIDim.RIGHT_PANEL_MIN_WIDTH, | 92 | new Dimension(GUIDim.LEFT_PANEL_MIN_WIDTH + GUIDim.RIGHT_PANEL_MIN_WIDTH, |
93 | GUIDim.BOTTOM_PANEL_HEIGHT)); | 93 | GUIDim.BOTTOM_PANEL_HEIGHT)); |
94 | - resultsPanel.setMinimumSize( | 94 | + resultPanel.setMinimumSize( |
95 | new Dimension(GUIDim.LEFT_PANEL_MIN_WIDTH + GUIDim.RIGHT_PANEL_MIN_WIDTH, | 95 | new Dimension(GUIDim.LEFT_PANEL_MIN_WIDTH + GUIDim.RIGHT_PANEL_MIN_WIDTH, |
96 | GUIDim.BOTTOM_PANEL_MIN_HEIGHT)); | 96 | GUIDim.BOTTOM_PANEL_MIN_HEIGHT)); |
97 | } | 97 | } |
@@ -100,7 +100,7 @@ public class MainPanelView extends JPanel { | @@ -100,7 +100,7 @@ public class MainPanelView extends JPanel { | ||
100 | * @return The JPanel where the VOTable result is displayed. | 100 | * @return The JPanel where the VOTable result is displayed. |
101 | */ | 101 | */ |
102 | public ResultPanelView getResultsPanel() { | 102 | public ResultPanelView getResultsPanel() { |
103 | - return resultsPanel; | 103 | + return resultPanel; |
104 | } | 104 | } |
105 | 105 | ||
106 | /** | 106 | /** |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/mainPanel/ViewListener.java
@@ -34,31 +34,10 @@ public interface ViewListener { | @@ -34,31 +34,10 @@ public interface ViewListener { | ||
34 | void onServiceSelected(int selectedService); | 34 | void onServiceSelected(int selectedService); |
35 | 35 | ||
36 | /** | 36 | /** |
37 | - * When the `Send query` button is clicked. | ||
38 | - * | ||
39 | - * @param query The query to send. | ||
40 | - */ | ||
41 | - void onSendButtonClicked(String query); | ||
42 | - | ||
43 | - /** | ||
44 | * When the `Download VOTable` button is clicked. | 37 | * When the `Download VOTable` button is clicked. |
45 | * | 38 | * |
46 | * @param outputFile The file to copy the VOTable. | 39 | * @param outputFile The file to copy the VOTable. |
47 | */ | 40 | */ |
48 | void onDownloadButtonClicked(File outputFile); | 41 | void onDownloadButtonClicked(File outputFile); |
49 | 42 | ||
50 | - /** | ||
51 | - * When a parameter is removed on the parameter panel. | ||
52 | - * | ||
53 | - * @param paramName The name of the parameter as described in REG-TAP specifications. | ||
54 | - * @param paramValue The value of the parameter to update. | ||
55 | - */ | ||
56 | - void onParameterChanged(String paramName, Object paramValue); | ||
57 | - | ||
58 | - /** | ||
59 | - * When a parameter is updated to a valid value on the parameter panel. | ||
60 | - * | ||
61 | - * @param paramName The name of the parameter as described in REG-TAP specifications. | ||
62 | - */ | ||
63 | - void onParameterRemoved(String paramName); | ||
64 | } | 43 | } |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/RequestPanelCtrl.java
@@ -18,11 +18,89 @@ package eu.omp.irap.vespa.epntapclient.gui.requestpanel; | @@ -18,11 +18,89 @@ package eu.omp.irap.vespa.epntapclient.gui.requestpanel; | ||
18 | 18 | ||
19 | import java.util.logging.Logger; | 19 | import java.util.logging.Logger; |
20 | 20 | ||
21 | +import eu.omp.irap.vespa.epntapclient.RequestCtrl; | ||
22 | +import eu.omp.irap.vespa.epntapclient.gui.mainPanel.MainPanelCtrl; | ||
23 | +import eu.omp.irap.vespa.epntapclient.service.Queries; | ||
24 | + | ||
21 | /** | 25 | /** |
22 | * @author N. Jourdane | 26 | * @author N. Jourdane |
23 | */ | 27 | */ |
24 | -public class RequestPanelCtrl { | 28 | +public class RequestPanelCtrl extends RequestCtrl implements RequestPanelListener { |
25 | 29 | ||
26 | /** The logger for the class RequestPanelCtrl. */ | 30 | /** The logger for the class RequestPanelCtrl. */ |
27 | private static final Logger logger = Logger.getLogger(RequestPanelCtrl.class.getName()); | 31 | private static final Logger logger = Logger.getLogger(RequestPanelCtrl.class.getName()); |
32 | + | ||
33 | + MainPanelCtrl mainPanelCtrl; | ||
34 | + | ||
35 | + RequestPanelView view; | ||
36 | + | ||
37 | + | ||
38 | + /** | ||
39 | + * Constructor of RequestPanelCtrl | ||
40 | + * | ||
41 | + * @param epnTapCtrl | ||
42 | + */ | ||
43 | + public RequestPanelCtrl(MainPanelCtrl mainPanelCtrl) { | ||
44 | + this.mainPanelCtrl = mainPanelCtrl; | ||
45 | + view = new RequestPanelView(this); | ||
46 | + } | ||
47 | + | ||
48 | + public void setMainPanelCtrl(MainPanelCtrl mainPanelCtrl) { | ||
49 | + this.mainPanelCtrl = mainPanelCtrl; | ||
50 | + view = new RequestPanelView(this); | ||
51 | + } | ||
52 | + | ||
53 | + public RequestPanelView getView() { | ||
54 | + return view; | ||
55 | + } | ||
56 | + | ||
57 | + /* | ||
58 | + * @see | ||
59 | + * eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener#onSendButtonClicked(java | ||
60 | + * .lang.String) | ||
61 | + */ | ||
62 | + @Override | ||
63 | + public void onSendButtonClicked(String query) { | ||
64 | + mainPanelCtrl.sendQuery(query); | ||
65 | + } | ||
66 | + | ||
67 | + /** | ||
68 | + * Update the query area with a working ADQL query, based on the parameters list. | ||
69 | + */ | ||
70 | + public void updateQueryArea() { | ||
71 | + String query = Queries.getQuery(mainPanelCtrl.getSelectedTableName(), paramValues, | ||
72 | + mainPanelCtrl.getNbMaxResult()); | ||
73 | + view.updateQueryArea(query); | ||
74 | + } | ||
75 | + | ||
76 | + /** | ||
77 | + * Update the query area with a working ADQL query, based on the parameters list. | ||
78 | + */ | ||
79 | + // private void updateQueryArea() { | ||
80 | + // mainPanelCtrl.updateQueryArea(); | ||
81 | + // } | ||
82 | + | ||
83 | + /* | ||
84 | + * @see | ||
85 | + * eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener#onParameterRemoved(java. | ||
86 | + * lang.String) | ||
87 | + */ | ||
88 | + @Override | ||
89 | + public void onParameterRemoved(String paramName) { | ||
90 | + removeParameter(paramName); | ||
91 | + updateQueryArea(); | ||
92 | + logger.info("removed " + paramName); | ||
93 | + } | ||
94 | + | ||
95 | + /* | ||
96 | + * @see | ||
97 | + * eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener#onParameterChanged(java. | ||
98 | + * lang.String, java.lang.Object) | ||
99 | + */ | ||
100 | + @Override | ||
101 | + public void onParameterChanged(String paramName, Object paramValue) { | ||
102 | + updateParameter(paramName, paramValue); | ||
103 | + updateQueryArea(); | ||
104 | + logger.info("uploaded " + paramName + ": " + paramValue); | ||
105 | + } | ||
28 | } | 106 | } |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/RequestPanelView.java
@@ -29,7 +29,6 @@ import javax.swing.JButton; | @@ -29,7 +29,6 @@ import javax.swing.JButton; | ||
29 | import javax.swing.JPanel; | 29 | import javax.swing.JPanel; |
30 | import javax.swing.JTextArea; | 30 | import javax.swing.JTextArea; |
31 | 31 | ||
32 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | ||
33 | import eu.omp.irap.vespa.epntapclient.gui.requestpanel.paramfield.DataProductTypeField; | 32 | import eu.omp.irap.vespa.epntapclient.gui.requestpanel.paramfield.DataProductTypeField; |
34 | import eu.omp.irap.vespa.epntapclient.gui.requestpanel.paramfield.DateRangeField; | 33 | import eu.omp.irap.vespa.epntapclient.gui.requestpanel.paramfield.DateRangeField; |
35 | import eu.omp.irap.vespa.epntapclient.gui.requestpanel.paramfield.FloatRangeField; | 34 | import eu.omp.irap.vespa.epntapclient.gui.requestpanel.paramfield.FloatRangeField; |
@@ -46,9 +45,6 @@ public class RequestPanelView extends JPanel { | @@ -46,9 +45,6 @@ public class RequestPanelView extends JPanel { | ||
46 | /** The serial version UID. */ | 45 | /** The serial version UID. */ |
47 | private static final long serialVersionUID = 1L; | 46 | private static final long serialVersionUID = 1L; |
48 | 47 | ||
49 | - /** The main view of the application. */ | ||
50 | - protected ViewListener viewListener; | ||
51 | - | ||
52 | /** The text area where the user write the query. */ | 48 | /** The text area where the user write the query. */ |
53 | protected JTextArea queryArea; | 49 | protected JTextArea queryArea; |
54 | 50 | ||
@@ -68,14 +64,16 @@ public class RequestPanelView extends JPanel { | @@ -68,14 +64,16 @@ public class RequestPanelView extends JPanel { | ||
68 | /** The height of the buttons panel. */ | 64 | /** The height of the buttons panel. */ |
69 | private static final int BUTTON_PANEL_HEIGHT = 20; | 65 | private static final int BUTTON_PANEL_HEIGHT = 20; |
70 | 66 | ||
67 | + private RequestPanelListener requestPanelListener; | ||
68 | + | ||
71 | 69 | ||
72 | /** | 70 | /** |
73 | * Method constructor | 71 | * Method constructor |
74 | * | 72 | * |
75 | * @param mainView The EPN-TAP main view. | 73 | * @param mainView The EPN-TAP main view. |
76 | */ | 74 | */ |
77 | - public RequestPanelView(ViewListener viewListener) { | ||
78 | - this.viewListener = viewListener; | 75 | + public RequestPanelView(RequestPanelListener requestPanelListener) { |
76 | + this.requestPanelListener = requestPanelListener; | ||
79 | buildRequestPanel(); | 77 | buildRequestPanel(); |
80 | } | 78 | } |
81 | 79 | ||
@@ -113,10 +111,11 @@ public class RequestPanelView extends JPanel { | @@ -113,10 +111,11 @@ public class RequestPanelView extends JPanel { | ||
113 | * @return the data product field | 111 | * @return the data product field |
114 | */ | 112 | */ |
115 | public DataProductTypeField getDataProductTypeField() { | 113 | public DataProductTypeField getDataProductTypeField() { |
116 | - if(dataProductTypeField == null){ | ||
117 | - dataProductTypeField = new DataProductTypeField(viewListener, "dataproduct_type"); | 114 | + if (dataProductTypeField == null) { |
115 | + dataProductTypeField = new DataProductTypeField(requestPanelListener, | ||
116 | + "dataproduct_type"); | ||
118 | } | 117 | } |
119 | - | 118 | + |
120 | return dataProductTypeField; | 119 | return dataProductTypeField; |
121 | } | 120 | } |
122 | 121 | ||
@@ -124,10 +123,10 @@ public class RequestPanelView extends JPanel { | @@ -124,10 +123,10 @@ public class RequestPanelView extends JPanel { | ||
124 | * @return the spectral range field | 123 | * @return the spectral range field |
125 | */ | 124 | */ |
126 | public FloatRangeField getSpectralRangeField() { | 125 | public FloatRangeField getSpectralRangeField() { |
127 | - if (spectralRangeField == null){ | ||
128 | - spectralRangeField = new FloatRangeField(viewListener, "spectral_range_"); | 126 | + if (spectralRangeField == null) { |
127 | + spectralRangeField = new FloatRangeField(requestPanelListener, "spectral_range_"); | ||
129 | } | 128 | } |
130 | - | 129 | + |
131 | return spectralRangeField; | 130 | return spectralRangeField; |
132 | } | 131 | } |
133 | 132 | ||
@@ -135,10 +134,10 @@ public class RequestPanelView extends JPanel { | @@ -135,10 +134,10 @@ public class RequestPanelView extends JPanel { | ||
135 | * @return the time range field | 134 | * @return the time range field |
136 | */ | 135 | */ |
137 | public DateRangeField getTimeRangeField() { | 136 | public DateRangeField getTimeRangeField() { |
138 | - if (timeRangeField == null){ | ||
139 | - timeRangeField = new DateRangeField(viewListener, "time_"); | 137 | + if (timeRangeField == null) { |
138 | + timeRangeField = new DateRangeField(requestPanelListener, "time_"); | ||
140 | } | 139 | } |
141 | - | 140 | + |
142 | return timeRangeField; | 141 | return timeRangeField; |
143 | } | 142 | } |
144 | 143 | ||
@@ -146,10 +145,10 @@ public class RequestPanelView extends JPanel { | @@ -146,10 +145,10 @@ public class RequestPanelView extends JPanel { | ||
146 | * @return the target name field | 145 | * @return the target name field |
147 | */ | 146 | */ |
148 | public TargetNameField getTargetNameField() { | 147 | public TargetNameField getTargetNameField() { |
149 | - if(targetNameField == null){ | ||
150 | - targetNameField = new TargetNameField(viewListener, "target_name"); | 148 | + if (targetNameField == null) { |
149 | + targetNameField = new TargetNameField(requestPanelListener, "target_name"); | ||
151 | } | 150 | } |
152 | - | 151 | + |
153 | return targetNameField; | 152 | return targetNameField; |
154 | } | 153 | } |
155 | 154 | ||
@@ -191,7 +190,7 @@ public class RequestPanelView extends JPanel { | @@ -191,7 +190,7 @@ public class RequestPanelView extends JPanel { | ||
191 | 190 | ||
192 | @Override | 191 | @Override |
193 | public void actionPerformed(ActionEvent e) { | 192 | public void actionPerformed(ActionEvent e) { |
194 | - viewListener.onSendButtonClicked(queryArea.getText()); | 193 | + requestPanelListener.onSendButtonClicked(queryArea.getText()); |
195 | } | 194 | } |
196 | }); | 195 | }); |
197 | buttonPanel.add(btnSend); | 196 | buttonPanel.add(btnSend); |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/paramfield/DataProductTypeField.java
@@ -24,7 +24,7 @@ import java.util.List; | @@ -24,7 +24,7 @@ import java.util.List; | ||
24 | 24 | ||
25 | import javax.swing.JComboBox; | 25 | import javax.swing.JComboBox; |
26 | 26 | ||
27 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | 27 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener; |
28 | 28 | ||
29 | /** | 29 | /** |
30 | * The data product type field is used only for the `dataproduct_type` parameter. It is a ComboBox | 30 | * The data product type field is used only for the `dataproduct_type` parameter. It is a ComboBox |
@@ -50,8 +50,8 @@ public class DataProductTypeField extends ParamField { | @@ -50,8 +50,8 @@ public class DataProductTypeField extends ParamField { | ||
50 | * @param viewListener The main listener of the application. | 50 | * @param viewListener The main listener of the application. |
51 | * @param paramName The name of the parameter. | 51 | * @param paramName The name of the parameter. |
52 | */ | 52 | */ |
53 | - public DataProductTypeField(ViewListener viewListener, String paramName) { | ||
54 | - super(viewListener, paramName); | 53 | + public DataProductTypeField(RequestPanelListener requestPanelListener, String paramName) { |
54 | + super(requestPanelListener, paramName); | ||
55 | comboBox = new JComboBox<>(DataProductType.values()); | 55 | comboBox = new JComboBox<>(DataProductType.values()); |
56 | comboBox.setSelectedItem(DataProductType.ALL); | 56 | comboBox.setSelectedItem(DataProductType.ALL); |
57 | comboBox.setPreferredSize( | 57 | comboBox.setPreferredSize( |
@@ -74,9 +74,9 @@ public class DataProductTypeField extends ParamField { | @@ -74,9 +74,9 @@ public class DataProductTypeField extends ParamField { | ||
74 | public void update() { | 74 | public void update() { |
75 | DataProductType item = (DataProductType) comboBox.getSelectedItem(); | 75 | DataProductType item = (DataProductType) comboBox.getSelectedItem(); |
76 | if (DataProductType.ALL.equals(item)) { | 76 | if (DataProductType.ALL.equals(item)) { |
77 | - viewListener.onParameterRemoved(paramName); | 77 | + requestPanelListener.onParameterRemoved(paramName); |
78 | } else { | 78 | } else { |
79 | - viewListener.onParameterChanged(paramName, item.query()); | 79 | + requestPanelListener.onParameterChanged(paramName, item.query()); |
80 | } | 80 | } |
81 | } | 81 | } |
82 | 82 |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/paramfield/DateRangeField.java
@@ -26,7 +26,7 @@ import java.util.Locale; | @@ -26,7 +26,7 @@ import java.util.Locale; | ||
26 | import javax.swing.JLabel; | 26 | import javax.swing.JLabel; |
27 | import javax.swing.JTextField; | 27 | import javax.swing.JTextField; |
28 | 28 | ||
29 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | 29 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener; |
30 | 30 | ||
31 | /** | 31 | /** |
32 | * The date range field is used for couples of parameter with both a `Date` type (actually only | 32 | * The date range field is used for couples of parameter with both a `Date` type (actually only |
@@ -60,8 +60,8 @@ public class DateRangeField extends ParamField implements TextFieldListener { | @@ -60,8 +60,8 @@ public class DateRangeField extends ParamField implements TextFieldListener { | ||
60 | * @param viewListener The main view listener of the application. | 60 | * @param viewListener The main view listener of the application. |
61 | * @param paramName The name of the parameter. | 61 | * @param paramName The name of the parameter. |
62 | */ | 62 | */ |
63 | - public DateRangeField(ViewListener viewListener, String paramName) { | ||
64 | - super(viewListener, paramName); | 63 | + public DateRangeField(RequestPanelListener requestPanelListener, String paramName) { |
64 | + super(requestPanelListener, paramName); | ||
65 | this.add(new JLabel("min ")); | 65 | this.add(new JLabel("min ")); |
66 | fieldMin = new JTextField(); | 66 | fieldMin = new JTextField(); |
67 | fieldMin.setName(MIN_SUFFIX); | 67 | fieldMin.setName(MIN_SUFFIX); |
@@ -87,12 +87,12 @@ public class DateRangeField extends ParamField implements TextFieldListener { | @@ -87,12 +87,12 @@ public class DateRangeField extends ParamField implements TextFieldListener { | ||
87 | DateFormat df = new SimpleDateFormat(DATE_FORMAT, Locale.ENGLISH); | 87 | DateFormat df = new SimpleDateFormat(DATE_FORMAT, Locale.ENGLISH); |
88 | if (field.getText().isEmpty()) { | 88 | if (field.getText().isEmpty()) { |
89 | field.setBackground(Color.WHITE); | 89 | field.setBackground(Color.WHITE); |
90 | - viewListener.onParameterRemoved(paramName + field.getName()); | 90 | + requestPanelListener.onParameterRemoved(paramName + field.getName()); |
91 | } else if (field.getText().matches(DATE_REGEX)) { | 91 | } else if (field.getText().matches(DATE_REGEX)) { |
92 | try { | 92 | try { |
93 | long date = df.parse(field.getText()).getTime(); | 93 | long date = df.parse(field.getText()).getTime(); |
94 | date = Math.round(date / 86400000.0 + 2440587.5); // to JD | 94 | date = Math.round(date / 86400000.0 + 2440587.5); // to JD |
95 | - viewListener.onParameterChanged(paramName + field.getName(), | 95 | + requestPanelListener.onParameterChanged(paramName + field.getName(), |
96 | date); | 96 | date); |
97 | field.setBackground(Color.WHITE); | 97 | field.setBackground(Color.WHITE); |
98 | } catch (@SuppressWarnings("unused") ParseException e) { | 98 | } catch (@SuppressWarnings("unused") ParseException e) { |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/paramfield/FloatField.java
@@ -20,7 +20,7 @@ import java.awt.Color; | @@ -20,7 +20,7 @@ import java.awt.Color; | ||
20 | 20 | ||
21 | import javax.swing.JTextField; | 21 | import javax.swing.JTextField; |
22 | 22 | ||
23 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | 23 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener; |
24 | 24 | ||
25 | /** | 25 | /** |
26 | * The float field is used for parameter with a `Float` class. It is a JTextField which checks if | 26 | * The float field is used for parameter with a `Float` class. It is a JTextField which checks if |
@@ -44,8 +44,8 @@ public class FloatField extends ParamField implements TextFieldListener { | @@ -44,8 +44,8 @@ public class FloatField extends ParamField implements TextFieldListener { | ||
44 | * @param viewListener The main view listener of the application. | 44 | * @param viewListener The main view listener of the application. |
45 | * @param paramName The name of the parameter. | 45 | * @param paramName The name of the parameter. |
46 | */ | 46 | */ |
47 | - public FloatField(ViewListener viewListener, String paramName) { | ||
48 | - super(viewListener, paramName); | 47 | + public FloatField(RequestPanelListener requestPanelListener, String paramName) { |
48 | + super(requestPanelListener, paramName); | ||
49 | field = new JTextField(); | 49 | field = new JTextField(); |
50 | ParamField.addChangeListener(this, field); | 50 | ParamField.addChangeListener(this, field); |
51 | this.add(field); | 51 | this.add(field); |
@@ -58,11 +58,11 @@ public class FloatField extends ParamField implements TextFieldListener { | @@ -58,11 +58,11 @@ public class FloatField extends ParamField implements TextFieldListener { | ||
58 | public void update(JTextField textField) { | 58 | public void update(JTextField textField) { |
59 | if (textField.getText().isEmpty()) { | 59 | if (textField.getText().isEmpty()) { |
60 | textField.setBackground(Color.WHITE); | 60 | textField.setBackground(Color.WHITE); |
61 | - viewListener.onParameterRemoved(paramName); | 61 | + requestPanelListener.onParameterRemoved(paramName); |
62 | } else { | 62 | } else { |
63 | try { | 63 | try { |
64 | float value = Float.parseFloat(textField.getText()); | 64 | float value = Float.parseFloat(textField.getText()); |
65 | - viewListener.onParameterChanged(paramName, value); | 65 | + requestPanelListener.onParameterChanged(paramName, value); |
66 | textField.setBackground(Color.WHITE); | 66 | textField.setBackground(Color.WHITE); |
67 | } catch (@SuppressWarnings("unused") NumberFormatException e) { | 67 | } catch (@SuppressWarnings("unused") NumberFormatException e) { |
68 | textField.setBackground(Color.PINK); | 68 | textField.setBackground(Color.PINK); |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/paramfield/FloatRangeField.java
@@ -20,7 +20,7 @@ import java.awt.Color; | @@ -20,7 +20,7 @@ import java.awt.Color; | ||
20 | 20 | ||
21 | import javax.swing.JTextField; | 21 | import javax.swing.JTextField; |
22 | 22 | ||
23 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | 23 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener; |
24 | 24 | ||
25 | /** | 25 | /** |
26 | * The float range field is used for couples of parameter with both a `Float` class. These are | 26 | * The float range field is used for couples of parameter with both a `Float` class. These are |
@@ -47,8 +47,8 @@ public class FloatRangeField extends ParamField implements TextFieldListener { | @@ -47,8 +47,8 @@ public class FloatRangeField extends ParamField implements TextFieldListener { | ||
47 | * @param viewListener The main view listener of the application. | 47 | * @param viewListener The main view listener of the application. |
48 | * @param paramName The name of the parameter. | 48 | * @param paramName The name of the parameter. |
49 | */ | 49 | */ |
50 | - public FloatRangeField(ViewListener viewListener, String paramName) { | ||
51 | - super(viewListener, paramName); | 50 | + public FloatRangeField(RequestPanelListener requestPanelListener, String paramName) { |
51 | + super(requestPanelListener, paramName); | ||
52 | fieldMin = new JTextField(); | 52 | fieldMin = new JTextField(); |
53 | fieldMin.setName(ParamField.MIN_SUFFIX); | 53 | fieldMin.setName(ParamField.MIN_SUFFIX); |
54 | ParamField.addChangeListener(this, fieldMin); | 54 | ParamField.addChangeListener(this, fieldMin); |
@@ -67,10 +67,10 @@ public class FloatRangeField extends ParamField implements TextFieldListener { | @@ -67,10 +67,10 @@ public class FloatRangeField extends ParamField implements TextFieldListener { | ||
67 | public void update(JTextField field) { | 67 | public void update(JTextField field) { |
68 | if (field.getText().isEmpty()) { | 68 | if (field.getText().isEmpty()) { |
69 | field.setBackground(Color.WHITE); | 69 | field.setBackground(Color.WHITE); |
70 | - viewListener.onParameterRemoved(paramName + field.getName()); | 70 | + requestPanelListener.onParameterRemoved(paramName + field.getName()); |
71 | } else { | 71 | } else { |
72 | try { | 72 | try { |
73 | - viewListener.onParameterChanged(paramName + field.getName(), | 73 | + requestPanelListener.onParameterChanged(paramName + field.getName(), |
74 | Float.parseFloat(field.getText())); | 74 | Float.parseFloat(field.getText())); |
75 | field.setBackground(Color.WHITE); | 75 | field.setBackground(Color.WHITE); |
76 | } catch (@SuppressWarnings("unused") NumberFormatException e) { | 76 | } catch (@SuppressWarnings("unused") NumberFormatException e) { |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/paramfield/ParamField.java
@@ -26,7 +26,7 @@ import javax.swing.JTextField; | @@ -26,7 +26,7 @@ import javax.swing.JTextField; | ||
26 | import javax.swing.event.DocumentEvent; | 26 | import javax.swing.event.DocumentEvent; |
27 | import javax.swing.event.DocumentListener; | 27 | import javax.swing.event.DocumentListener; |
28 | 28 | ||
29 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | 29 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener; |
30 | 30 | ||
31 | /** | 31 | /** |
32 | * A field used to set a service parameter to build the query (in the parameter panel). ParamField | 32 | * A field used to set a service parameter to build the query (in the parameter panel). ParamField |
@@ -63,7 +63,7 @@ public abstract class ParamField extends JPanel { | @@ -63,7 +63,7 @@ public abstract class ParamField extends JPanel { | ||
63 | static final String MAX_SUFFIX = "max"; | 63 | static final String MAX_SUFFIX = "max"; |
64 | 64 | ||
65 | /** The main view of the application. */ | 65 | /** The main view of the application. */ |
66 | - ViewListener viewListener; | 66 | + RequestPanelListener requestPanelListener; |
67 | 67 | ||
68 | /** The parameter name of the field */ | 68 | /** The parameter name of the field */ |
69 | String paramName; | 69 | String paramName; |
@@ -76,10 +76,10 @@ public abstract class ParamField extends JPanel { | @@ -76,10 +76,10 @@ public abstract class ParamField extends JPanel { | ||
76 | * @param mainView The main view of the application. | 76 | * @param mainView The main view of the application. |
77 | * @param paramName The name of the parameter. | 77 | * @param paramName The name of the parameter. |
78 | */ | 78 | */ |
79 | - public ParamField(ViewListener viewListener, String paramName) { | 79 | + public ParamField(RequestPanelListener requestPanelListener, String paramName) { |
80 | super(); | 80 | super(); |
81 | 81 | ||
82 | - this.viewListener = viewListener; | 82 | + this.requestPanelListener = requestPanelListener; |
83 | this.paramName = paramName; | 83 | this.paramName = paramName; |
84 | 84 | ||
85 | buildParamField(); | 85 | buildParamField(); |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/paramfield/StringField.java
@@ -18,7 +18,7 @@ package eu.omp.irap.vespa.epntapclient.gui.requestpanel.paramfield; | @@ -18,7 +18,7 @@ package eu.omp.irap.vespa.epntapclient.gui.requestpanel.paramfield; | ||
18 | 18 | ||
19 | import javax.swing.JTextField; | 19 | import javax.swing.JTextField; |
20 | 20 | ||
21 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | 21 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener; |
22 | 22 | ||
23 | /** | 23 | /** |
24 | * The string field is used for parameter with a `String` class. It is a simple JTextField with no | 24 | * The string field is used for parameter with a `String` class. It is a simple JTextField with no |
@@ -41,8 +41,8 @@ public class StringField extends ParamField implements TextFieldListener { | @@ -41,8 +41,8 @@ public class StringField extends ParamField implements TextFieldListener { | ||
41 | * @param mainView The main view of the application. | 41 | * @param mainView The main view of the application. |
42 | * @param paramName The name of the parameter. | 42 | * @param paramName The name of the parameter. |
43 | */ | 43 | */ |
44 | - public StringField(ViewListener viewListener, String paramName) { | ||
45 | - super(viewListener, paramName); | 44 | + public StringField(RequestPanelListener requestPanelListener, String paramName) { |
45 | + super(requestPanelListener, paramName); | ||
46 | field = new JTextField(); | 46 | field = new JTextField(); |
47 | ParamField.addChangeListener(this, field); | 47 | ParamField.addChangeListener(this, field); |
48 | this.add(field); | 48 | this.add(field); |
@@ -54,9 +54,9 @@ public class StringField extends ParamField implements TextFieldListener { | @@ -54,9 +54,9 @@ public class StringField extends ParamField implements TextFieldListener { | ||
54 | @Override | 54 | @Override |
55 | public void update(JTextField textField) { | 55 | public void update(JTextField textField) { |
56 | if (textField.getText().isEmpty()) { | 56 | if (textField.getText().isEmpty()) { |
57 | - viewListener.onParameterChanged(paramName, null); | 57 | + requestPanelListener.onParameterChanged(paramName, null); |
58 | } else { | 58 | } else { |
59 | - viewListener.onParameterChanged(paramName, textField.getText()); | 59 | + requestPanelListener.onParameterChanged(paramName, textField.getText()); |
60 | } | 60 | } |
61 | } | 61 | } |
62 | } | 62 | } |
63 | \ No newline at end of file | 63 | \ No newline at end of file |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/paramfield/TargetClassField.java
@@ -22,7 +22,7 @@ import java.awt.event.ActionListener; | @@ -22,7 +22,7 @@ import java.awt.event.ActionListener; | ||
22 | 22 | ||
23 | import javax.swing.JComboBox; | 23 | import javax.swing.JComboBox; |
24 | 24 | ||
25 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | 25 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener; |
26 | 26 | ||
27 | /** | 27 | /** |
28 | * The target class field is used only for the `target_class` parameter. It is a ComboBox filled | 28 | * The target class field is used only for the `target_class` parameter. It is a ComboBox filled |
@@ -48,8 +48,8 @@ public class TargetClassField extends ParamField { | @@ -48,8 +48,8 @@ public class TargetClassField extends ParamField { | ||
48 | * @param mainView The main view of the application. | 48 | * @param mainView The main view of the application. |
49 | * @param paramName The name of the parameter. | 49 | * @param paramName The name of the parameter. |
50 | */ | 50 | */ |
51 | - public TargetClassField(ViewListener viewListener, String paramName) { | ||
52 | - super(viewListener, paramName); | 51 | + public TargetClassField(RequestPanelListener requestPanelListener, String paramName) { |
52 | + super(requestPanelListener, paramName); | ||
53 | comboBox = new JComboBox<>(TargetClass.values()); | 53 | comboBox = new JComboBox<>(TargetClass.values()); |
54 | comboBox.setPreferredSize( | 54 | comboBox.setPreferredSize( |
55 | new Dimension(ParamField.MIN_FIELD_WIDTH, ParamField.FIELD_HEIGHT)); | 55 | new Dimension(ParamField.MIN_FIELD_WIDTH, ParamField.FIELD_HEIGHT)); |
@@ -69,9 +69,9 @@ public class TargetClassField extends ParamField { | @@ -69,9 +69,9 @@ public class TargetClassField extends ParamField { | ||
69 | public void update() { | 69 | public void update() { |
70 | TargetClass value = (TargetClass) comboBox.getSelectedItem(); | 70 | TargetClass value = (TargetClass) comboBox.getSelectedItem(); |
71 | if (TargetClass.ALL.equals(value)) { | 71 | if (TargetClass.ALL.equals(value)) { |
72 | - viewListener.onParameterRemoved(paramName); | 72 | + requestPanelListener.onParameterRemoved(paramName); |
73 | } else { | 73 | } else { |
74 | - viewListener.onParameterChanged(paramName, value.query()); | 74 | + requestPanelListener.onParameterChanged(paramName, value.query()); |
75 | } | 75 | } |
76 | } | 76 | } |
77 | 77 |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/requestpanel/paramfield/TargetNameField.java
@@ -24,7 +24,7 @@ import javax.swing.JTextField; | @@ -24,7 +24,7 @@ import javax.swing.JTextField; | ||
24 | import javax.swing.SwingUtilities; | 24 | import javax.swing.SwingUtilities; |
25 | 25 | ||
26 | import eu.omp.irap.vespa.epntapclient.EpnTapGet; | 26 | import eu.omp.irap.vespa.epntapclient.EpnTapGet; |
27 | -import eu.omp.irap.vespa.epntapclient.gui.mainPanel.ViewListener; | 27 | +import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelListener; |
28 | import eu.omp.irap.vespa.votable.utils.CantSendQueryException; | 28 | import eu.omp.irap.vespa.votable.utils.CantSendQueryException; |
29 | 29 | ||
30 | /** | 30 | /** |
@@ -60,8 +60,8 @@ public class TargetNameField extends ParamField implements TextFieldListener { | @@ -60,8 +60,8 @@ public class TargetNameField extends ParamField implements TextFieldListener { | ||
60 | * @param mainView The main view of the application. | 60 | * @param mainView The main view of the application. |
61 | * @param paramName The name of the parameter. | 61 | * @param paramName The name of the parameter. |
62 | */ | 62 | */ |
63 | - public TargetNameField(ViewListener viewListener, String paramName) { | ||
64 | - super(viewListener, paramName); | 63 | + public TargetNameField(RequestPanelListener requestPanelListener, String paramName) { |
64 | + super(requestPanelListener, paramName); | ||
65 | comboBox = new JComboBox<>(); | 65 | comboBox = new JComboBox<>(); |
66 | comboBox.setPreferredSize( | 66 | comboBox.setPreferredSize( |
67 | new Dimension(ParamField.MIN_FIELD_WIDTH, ParamField.FIELD_HEIGHT)); | 67 | new Dimension(ParamField.MIN_FIELD_WIDTH, ParamField.FIELD_HEIGHT)); |
@@ -106,9 +106,9 @@ public class TargetNameField extends ParamField implements TextFieldListener { | @@ -106,9 +106,9 @@ public class TargetNameField extends ParamField implements TextFieldListener { | ||
106 | comboBox.showPopup(); | 106 | comboBox.showPopup(); |
107 | } | 107 | } |
108 | if (content.isEmpty()) { | 108 | if (content.isEmpty()) { |
109 | - viewListener.onParameterRemoved(paramName); | 109 | + requestPanelListener.onParameterRemoved(paramName); |
110 | } else { | 110 | } else { |
111 | - viewListener.onParameterChanged(paramName, content); | 111 | + requestPanelListener.onParameterChanged(paramName, content); |
112 | } | 112 | } |
113 | } | 113 | } |
114 | } | 114 | } |
src/test/java/eu/omp/irap/vespa/epntapclient/EpnTapConnectionTest.java
@@ -140,7 +140,6 @@ public class EpnTapConnectionTest { | @@ -140,7 +140,6 @@ public class EpnTapConnectionTest { | ||
140 | 140 | ||
141 | Resource amda = null; | 141 | Resource amda = null; |
142 | for (Resource resource : resources) { | 142 | for (Resource resource : resources) { |
143 | - System.out.println(resource.getIdentifier()); | ||
144 | if (AMDA_IVOID.equals(resource.getIdentifier())) { | 143 | if (AMDA_IVOID.equals(resource.getIdentifier())) { |
145 | amda = resource; | 144 | amda = resource; |
146 | } | 145 | } |