Commit e669c5d39fadbbc38773a6d289339874d336c53a
1 parent
8ac245d4
Exists in
master
Improve Javadoc.
Showing
11 changed files
with
231 additions
and
101 deletions
Show diff stats
src/main/java/eu/omp/irap/vespa/epntapclient/EpnTapConnection.java
@@ -29,8 +29,9 @@ import eu.omp.irap.vespa.epntapclient.voresource.VOResourceCtrl; | @@ -29,8 +29,9 @@ import eu.omp.irap.vespa.epntapclient.voresource.VOResourceCtrl; | ||
29 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException; | 29 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException; |
30 | import eu.omp.irap.vespa.epntapclient.voresource.model.Resource; | 30 | import eu.omp.irap.vespa.epntapclient.voresource.model.Resource; |
31 | import eu.omp.irap.vespa.epntapclient.votable.model.VOTABLE; | 31 | import eu.omp.irap.vespa.epntapclient.votable.model.VOTABLE; |
32 | -import eu.omp.irap.vespa.votable.controller.CantGetVOTableException; | ||
33 | import eu.omp.irap.vespa.votable.controller.VOTableController; | 32 | import eu.omp.irap.vespa.votable.controller.VOTableController; |
33 | +import eu.omp.irap.vespa.votable.controller.VOTableException; | ||
34 | +import eu.omp.irap.vespa.votable.controller.VOTableException.CantReadVOTableException; | ||
34 | import eu.omp.irap.vespa.votable.utils.StringJoiner; | 35 | import eu.omp.irap.vespa.votable.utils.StringJoiner; |
35 | import eu.omp.irap.vespa.votable.votabledata.VOTableData; | 36 | import eu.omp.irap.vespa.votable.votabledata.VOTableData; |
36 | 37 | ||
@@ -50,7 +51,7 @@ public class EpnTapConnection implements EpnTapInterface { | @@ -50,7 +51,7 @@ public class EpnTapConnection implements EpnTapInterface { | ||
50 | 51 | ||
51 | @Override | 52 | @Override |
52 | public List<Resource> getEPNVOResources() throws VOResourceException { | 53 | public List<Resource> getEPNVOResources() throws VOResourceException { |
53 | - List<String> ivoids = VOResourceCtrl.getVOResources(ServiceCore.EPNCORE); | 54 | + List<String> ivoids = VOResourceCtrl.getIvoidResources(ServiceCore.EPNCORE); |
54 | return VOResourceCtrl.getVOResources(ivoids); | 55 | return VOResourceCtrl.getVOResources(ivoids); |
55 | } | 56 | } |
56 | 57 | ||
@@ -64,14 +65,14 @@ public class EpnTapConnection implements EpnTapInterface { | @@ -64,14 +65,14 @@ public class EpnTapConnection implements EpnTapInterface { | ||
64 | // *** Service *** | 65 | // *** Service *** |
65 | 66 | ||
66 | @Override | 67 | @Override |
67 | - public VOTABLE getEPNService(String ivoid) throws CantGetVOTableException { | 68 | + public VOTABLE getEPNService(String ivoid) throws VOTableException { |
68 | String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_IVOID, ivoid); | 69 | String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_IVOID, ivoid); |
69 | return ServiceCtrl.getVoTable(query); | 70 | return ServiceCtrl.getVoTable(query); |
70 | } | 71 | } |
71 | 72 | ||
72 | @Override | 73 | @Override |
73 | public VOTABLE getEPNService(String ivoid, List<String> attributes) | 74 | public VOTABLE getEPNService(String ivoid, List<String> attributes) |
74 | - throws CantGetVOTableException { | 75 | + throws VOTableException { |
75 | String select = StringJoiner.join(attributes); | 76 | String select = StringJoiner.join(attributes); |
76 | String query = String.format(Queries.SELECT_TAP_SERVICES_WHERE_IVOID, select, ivoid); | 77 | String query = String.format(Queries.SELECT_TAP_SERVICES_WHERE_IVOID, select, ivoid); |
77 | return ServiceCtrl.getVoTable(query); | 78 | return ServiceCtrl.getVoTable(query); |
@@ -80,14 +81,14 @@ public class EpnTapConnection implements EpnTapInterface { | @@ -80,14 +81,14 @@ public class EpnTapConnection implements EpnTapInterface { | ||
80 | // *** Services *** | 81 | // *** Services *** |
81 | 82 | ||
82 | @Override | 83 | @Override |
83 | - public VOTABLE getEPNServices() throws CantGetVOTableException { | 84 | + public VOTABLE getEPNServices() throws VOTableException { |
84 | String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_CORE, | 85 | String query = String.format(Queries.SELECT_ALL_TAP_SERVICES_WHERE_CORE, |
85 | ServiceCore.EPNCORE); | 86 | ServiceCore.EPNCORE); |
86 | return ServiceCtrl.getVoTable(query); | 87 | return ServiceCtrl.getVoTable(query); |
87 | } | 88 | } |
88 | 89 | ||
89 | @Override | 90 | @Override |
90 | - public VOTABLE getEPNServices(List<String> attributes) throws CantGetVOTableException { | 91 | + public VOTABLE getEPNServices(List<String> attributes) throws VOTableException { |
91 | String select = StringJoiner.join(attributes); | 92 | String select = StringJoiner.join(attributes); |
92 | String query = String.format(Queries.SELECT_TAP_SERVICES, select); | 93 | String query = String.format(Queries.SELECT_TAP_SERVICES, select); |
93 | return ServiceCtrl.getVoTable(query); | 94 | return ServiceCtrl.getVoTable(query); |
@@ -95,7 +96,7 @@ public class EpnTapConnection implements EpnTapInterface { | @@ -95,7 +96,7 @@ public class EpnTapConnection implements EpnTapInterface { | ||
95 | 96 | ||
96 | @Override | 97 | @Override |
97 | public VOTABLE getEPNServices(List<String> keywords, List<String> attributes) | 98 | public VOTABLE getEPNServices(List<String> keywords, List<String> attributes) |
98 | - throws CantGetVOTableException { | 99 | + throws VOTableException { |
99 | attributes.add("res_subject"); | 100 | attributes.add("res_subject"); |
100 | String select = StringJoiner.join(attributes); | 101 | String select = StringJoiner.join(attributes); |
101 | List<String> whereList = new ArrayList<>(); | 102 | List<String> whereList = new ArrayList<>(); |
@@ -110,12 +111,12 @@ public class EpnTapConnection implements EpnTapInterface { | @@ -110,12 +111,12 @@ public class EpnTapConnection implements EpnTapInterface { | ||
110 | // *** Getters *** | 111 | // *** Getters *** |
111 | 112 | ||
112 | @Override | 113 | @Override |
113 | - public String getEPNCoreTableName(String ivoid) throws CantGetVOTableException { | 114 | + public String getEPNCoreTableName(String ivoid) throws VOTableException { |
114 | return (String) ServiceCtrl.getParameter(ivoid, "table_name"); | 115 | return (String) ServiceCtrl.getParameter(ivoid, "table_name"); |
115 | } | 116 | } |
116 | 117 | ||
117 | @Override | 118 | @Override |
118 | - public String getTAPURL(String ivoid) throws CantGetVOTableException { | 119 | + public String getTAPURL(String ivoid) throws VOTableException { |
119 | return (String) ServiceCtrl.getParameter(ivoid, "access_url"); | 120 | return (String) ServiceCtrl.getParameter(ivoid, "access_url"); |
120 | } | 121 | } |
121 | 122 | ||
@@ -123,7 +124,7 @@ public class EpnTapConnection implements EpnTapInterface { | @@ -123,7 +124,7 @@ public class EpnTapConnection implements EpnTapInterface { | ||
123 | 124 | ||
124 | @Override | 125 | @Override |
125 | public List<Granule> sendADQLQuery(String tapURL, String adqlQuery) | 126 | public List<Granule> sendADQLQuery(String tapURL, String adqlQuery) |
126 | - throws CantGetVOTableException { | 127 | + throws VOTableException { |
127 | VOTableController voTableCtrl = new VOTableController(tapURL, adqlQuery); | 128 | VOTableController voTableCtrl = new VOTableController(tapURL, adqlQuery); |
128 | voTableCtrl.readTable(); | 129 | voTableCtrl.readTable(); |
129 | VOTableData data = voTableCtrl.getVOTableData(); | 130 | VOTableData data = voTableCtrl.getVOTableData(); |
@@ -133,14 +134,14 @@ public class EpnTapConnection implements EpnTapInterface { | @@ -133,14 +134,14 @@ public class EpnTapConnection implements EpnTapInterface { | ||
133 | GranuleCtrl gc = new GranuleCtrl(data); | 134 | GranuleCtrl gc = new GranuleCtrl(data); |
134 | granules = gc.getGranules(); | 135 | granules = gc.getGranules(); |
135 | } catch (ParseException e) { | 136 | } catch (ParseException e) { |
136 | - throw new CantGetVOTableException("Parsing error on a granule.", e); | 137 | + throw new CantReadVOTableException("Parsing error on a granule.", e); |
137 | } | 138 | } |
138 | return granules; | 139 | return granules; |
139 | } | 140 | } |
140 | 141 | ||
141 | @Override | 142 | @Override |
142 | public List<Granule> sendQuery(String tapURL, String schemaName, Query enumeratedQuery) | 143 | public List<Granule> sendQuery(String tapURL, String schemaName, Query enumeratedQuery) |
143 | - throws CantGetVOTableException { | 144 | + throws VOTableException { |
144 | String query = String.format(enumeratedQuery.toString(), schemaName); | 145 | String query = String.format(enumeratedQuery.toString(), schemaName); |
145 | VOTableController voTableCtrl = new VOTableController(tapURL, query); | 146 | VOTableController voTableCtrl = new VOTableController(tapURL, query); |
146 | voTableCtrl.readTable(); | 147 | voTableCtrl.readTable(); |
@@ -151,7 +152,7 @@ public class EpnTapConnection implements EpnTapInterface { | @@ -151,7 +152,7 @@ public class EpnTapConnection implements EpnTapInterface { | ||
151 | GranuleCtrl gc = new GranuleCtrl(data); | 152 | GranuleCtrl gc = new GranuleCtrl(data); |
152 | granules = gc.getGranules(); | 153 | granules = gc.getGranules(); |
153 | } catch (ParseException e) { | 154 | } catch (ParseException e) { |
154 | - throw new CantGetVOTableException("Parsing error on a granule.", e); | 155 | + throw new CantReadVOTableException("Parsing error on a granule.", e); |
155 | } | 156 | } |
156 | return granules; | 157 | return granules; |
157 | } | 158 | } |
src/main/java/eu/omp/irap/vespa/epntapclient/EpnTapController.java
@@ -22,7 +22,7 @@ import java.util.logging.Logger; | @@ -22,7 +22,7 @@ import java.util.logging.Logger; | ||
22 | import eu.omp.irap.vespa.epntapclient.service.Queries; | 22 | import eu.omp.irap.vespa.epntapclient.service.Queries; |
23 | import eu.omp.irap.vespa.epntapclient.service.ServiceCore; | 23 | import eu.omp.irap.vespa.epntapclient.service.ServiceCore; |
24 | import eu.omp.irap.vespa.votable.Consts; | 24 | import eu.omp.irap.vespa.votable.Consts; |
25 | -import eu.omp.irap.vespa.votable.controller.CantGetVOTableException; | 25 | +import eu.omp.irap.vespa.votable.controller.VOTableException; |
26 | import eu.omp.irap.vespa.votable.controller.VOTableController; | 26 | import eu.omp.irap.vespa.votable.controller.VOTableController; |
27 | 27 | ||
28 | /** | 28 | /** |
@@ -66,7 +66,7 @@ public class EpnTapController { | @@ -66,7 +66,7 @@ public class EpnTapController { | ||
66 | public void readServices() { | 66 | public void readServices() { |
67 | try { | 67 | try { |
68 | servicesCtrl.readTable(); | 68 | servicesCtrl.readTable(); |
69 | - } catch (CantGetVOTableException e) { | 69 | + } catch (VOTableException e) { |
70 | displayError("Can not get services.", e); | 70 | displayError("Can not get services.", e); |
71 | } | 71 | } |
72 | } | 72 | } |
@@ -87,10 +87,10 @@ public class EpnTapController { | @@ -87,10 +87,10 @@ public class EpnTapController { | ||
87 | * | 87 | * |
88 | * @param query An ADQL query to send. | 88 | * @param query An ADQL query to send. |
89 | * @param tableServiceURL the URL of the service. | 89 | * @param tableServiceURL the URL of the service. |
90 | - * @throws CantGetVOTableException Can not get the VOTable. | 90 | + * @throws VOTableException Can not get the VOTable. |
91 | */ | 91 | */ |
92 | public void sendQuery(String query, String tableServiceURL) | 92 | public void sendQuery(String query, String tableServiceURL) |
93 | - throws CantGetVOTableException { | 93 | + throws VOTableException { |
94 | resultsCtrl = new VOTableController(tableServiceURL, query); | 94 | resultsCtrl = new VOTableController(tableServiceURL, query); |
95 | resultsCtrl.readTable(); | 95 | resultsCtrl.readTable(); |
96 | voTablePath = resultsCtrl.getVOTablePath(); | 96 | voTablePath = resultsCtrl.getVOTablePath(); |
src/main/java/eu/omp/irap/vespa/epntapclient/EpnTapInterface.java
@@ -23,7 +23,7 @@ import eu.omp.irap.vespa.epntapclient.granule.GranuleEnum; | @@ -23,7 +23,7 @@ import eu.omp.irap.vespa.epntapclient.granule.GranuleEnum; | ||
23 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException; | 23 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException; |
24 | import eu.omp.irap.vespa.epntapclient.voresource.model.Resource; | 24 | import eu.omp.irap.vespa.epntapclient.voresource.model.Resource; |
25 | import eu.omp.irap.vespa.epntapclient.votable.model.VOTABLE; | 25 | import eu.omp.irap.vespa.epntapclient.votable.model.VOTABLE; |
26 | -import eu.omp.irap.vespa.votable.controller.CantGetVOTableException; | 26 | +import eu.omp.irap.vespa.votable.controller.VOTableException; |
27 | 27 | ||
28 | /** | 28 | /** |
29 | * @author N. Jourdane | 29 | * @author N. Jourdane |
@@ -74,9 +74,9 @@ public interface EpnTapInterface { | @@ -74,9 +74,9 @@ public interface EpnTapInterface { | ||
74 | * | 74 | * |
75 | * @param ivoid The ivoid of the service to get. | 75 | * @param ivoid The ivoid of the service to get. |
76 | * @return A VOTable containing the service. | 76 | * @return A VOTable containing the service. |
77 | - * @throws CantGetVOTableException Can not get the VOTable. | 77 | + * @throws VOTableException Can not get the VOTable. |
78 | */ | 78 | */ |
79 | - public VOTABLE getEPNService(String ivoid) throws CantGetVOTableException; | 79 | + public VOTABLE getEPNService(String ivoid) throws VOTableException; |
80 | 80 | ||
81 | /** | 81 | /** |
82 | * Returns a VOTable containing the attributes of the corresponding service (from the list of | 82 | * Returns a VOTable containing the attributes of the corresponding service (from the list of |
@@ -86,10 +86,10 @@ public interface EpnTapInterface { | @@ -86,10 +86,10 @@ public interface EpnTapInterface { | ||
86 | * @param attributes A list of attributes, which are the column names to get. | 86 | * @param attributes A list of attributes, which are the column names to get. |
87 | * @return A VOTable containing the service. | 87 | * @return A VOTable containing the service. |
88 | * @see GranuleEnum The EpnTapv2 column names. | 88 | * @see GranuleEnum The EpnTapv2 column names. |
89 | - * @throws CantGetVOTableException Can not get the VOTable. | 89 | + * @throws VOTableException Can not get the VOTable. |
90 | */ | 90 | */ |
91 | public VOTABLE getEPNService(String ivoid, List<String> attributes) | 91 | public VOTABLE getEPNService(String ivoid, List<String> attributes) |
92 | - throws CantGetVOTableException; | 92 | + throws VOTableException; |
93 | 93 | ||
94 | // *** Services *** | 94 | // *** Services *** |
95 | 95 | ||
@@ -98,9 +98,9 @@ public interface EpnTapInterface { | @@ -98,9 +98,9 @@ public interface EpnTapInterface { | ||
98 | * predefined list). | 98 | * predefined list). |
99 | * | 99 | * |
100 | * @return A VOTable containing the services. | 100 | * @return A VOTable containing the services. |
101 | - * @throws CantGetVOTableException Can not get the VOTable. | 101 | + * @throws VOTableException Can not get the VOTable. |
102 | */ | 102 | */ |
103 | - public VOTABLE getEPNServices() throws CantGetVOTableException; | 103 | + public VOTABLE getEPNServices() throws VOTableException; |
104 | 104 | ||
105 | /** | 105 | /** |
106 | * Returns a VOTable containing the list of EPN-TAP services and their attributes (from the list | 106 | * Returns a VOTable containing the list of EPN-TAP services and their attributes (from the list |
@@ -108,9 +108,9 @@ public interface EpnTapInterface { | @@ -108,9 +108,9 @@ public interface EpnTapInterface { | ||
108 | * | 108 | * |
109 | * @param attributes A list of attributes, which are the column names to get. | 109 | * @param attributes A list of attributes, which are the column names to get. |
110 | * @return A VOTable containing the services. | 110 | * @return A VOTable containing the services. |
111 | - * @throws CantGetVOTableException Can not get the VOTable. | 111 | + * @throws VOTableException Can not get the VOTable. |
112 | */ | 112 | */ |
113 | - public VOTABLE getEPNServices(List<String> attributes) throws CantGetVOTableException; | 113 | + public VOTABLE getEPNServices(List<String> attributes) throws VOTableException; |
114 | 114 | ||
115 | /** | 115 | /** |
116 | * Returns a VOTable containing the list of EPN-TAP services corresponding to the keywords and | 116 | * Returns a VOTable containing the list of EPN-TAP services corresponding to the keywords and |
@@ -120,10 +120,10 @@ public interface EpnTapInterface { | @@ -120,10 +120,10 @@ public interface EpnTapInterface { | ||
120 | * rr.res_subject of a registry. | 120 | * rr.res_subject of a registry. |
121 | * @param attributes A list of attributes, which are the column names to get. | 121 | * @param attributes A list of attributes, which are the column names to get. |
122 | * @return A VOTable containing the services. | 122 | * @return A VOTable containing the services. |
123 | - * @throws CantGetVOTableException Can not get the VOTable. | 123 | + * @throws VOTableException Can not get the VOTable. |
124 | */ | 124 | */ |
125 | public VOTABLE getEPNServices(List<String> keywords, List<String> attributes) | 125 | public VOTABLE getEPNServices(List<String> keywords, List<String> attributes) |
126 | - throws CantGetVOTableException; | 126 | + throws VOTableException; |
127 | 127 | ||
128 | // *** Getters *** | 128 | // *** Getters *** |
129 | 129 | ||
@@ -132,18 +132,18 @@ public interface EpnTapInterface { | @@ -132,18 +132,18 @@ public interface EpnTapInterface { | ||
132 | * | 132 | * |
133 | * @param ivoid The ivoid of the service. | 133 | * @param ivoid The ivoid of the service. |
134 | * @return The table name of the service, used usually in the 'FROM' keyword in a ADQL query. | 134 | * @return The table name of the service, used usually in the 'FROM' keyword in a ADQL query. |
135 | - * @throws CantGetVOTableException Can not get the VOTable. | 135 | + * @throws VOTableException Can not get the VOTable. |
136 | */ | 136 | */ |
137 | - public String getEPNCoreTableName(String ivoid) throws CantGetVOTableException; | 137 | + public String getEPNCoreTableName(String ivoid) throws VOTableException; |
138 | 138 | ||
139 | /** | 139 | /** |
140 | * Returns the Access URL of an EPN-TAP Service. | 140 | * Returns the Access URL of an EPN-TAP Service. |
141 | * | 141 | * |
142 | * @param ivoid the ivoid of the service. | 142 | * @param ivoid the ivoid of the service. |
143 | * @return The target URL of the service, used usually to process requests on it. | 143 | * @return The target URL of the service, used usually to process requests on it. |
144 | - * @throws CantGetVOTableException Can not get the VOTable. | 144 | + * @throws VOTableException Can not get the VOTable. |
145 | */ | 145 | */ |
146 | - public String getTAPURL(String ivoid) throws CantGetVOTableException; | 146 | + public String getTAPURL(String ivoid) throws VOTableException; |
147 | 147 | ||
148 | // *** Queries *** | 148 | // *** Queries *** |
149 | 149 | ||
@@ -155,10 +155,10 @@ public interface EpnTapInterface { | @@ -155,10 +155,10 @@ public interface EpnTapInterface { | ||
155 | * @param tapURL The URL of the service. | 155 | * @param tapURL The URL of the service. |
156 | * @param adqlQuery The ADQL query. | 156 | * @param adqlQuery The ADQL query. |
157 | * @return A list of Granules resulting the query. | 157 | * @return A list of Granules resulting the query. |
158 | - * @throws CantGetVOTableException Can not get the VOTable. | 158 | + * @throws VOTableException Can not get the VOTable. |
159 | */ | 159 | */ |
160 | public List<Granule> sendADQLQuery(String tapURL, String adqlQuery) | 160 | public List<Granule> sendADQLQuery(String tapURL, String adqlQuery) |
161 | - throws CantGetVOTableException; | 161 | + throws VOTableException; |
162 | 162 | ||
163 | /** | 163 | /** |
164 | * Returns the list of granules which are compliant with the Query, in VOTable format. "Query" | 164 | * Returns the list of granules which are compliant with the Query, in VOTable format. "Query" |
@@ -169,8 +169,8 @@ public interface EpnTapInterface { | @@ -169,8 +169,8 @@ public interface EpnTapInterface { | ||
169 | * @param schemaName The name of the service schema. | 169 | * @param schemaName The name of the service schema. |
170 | * @param query The query, from a list a predefined queries. | 170 | * @param query The query, from a list a predefined queries. |
171 | * @return A list of granules resulting the query. | 171 | * @return A list of granules resulting the query. |
172 | - * @throws CantGetVOTableException Can not get the VOTable. | 172 | + * @throws VOTableException Can not get the VOTable. |
173 | */ | 173 | */ |
174 | public List<Granule> sendQuery(String tapURL, String schemaName, Query query) | 174 | public List<Granule> sendQuery(String tapURL, String schemaName, Query query) |
175 | - throws CantGetVOTableException; | 175 | + throws VOTableException; |
176 | } | 176 | } |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/mainpanel/MainPanelCtrl.java
@@ -25,7 +25,7 @@ import eu.omp.irap.vespa.epntapclient.EpnTapController; | @@ -25,7 +25,7 @@ import eu.omp.irap.vespa.epntapclient.EpnTapController; | ||
25 | import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelCtrl; | 25 | import eu.omp.irap.vespa.epntapclient.gui.requestpanel.RequestPanelCtrl; |
26 | import eu.omp.irap.vespa.epntapclient.gui.resultpanel.ResultPanelCtrl; | 26 | import eu.omp.irap.vespa.epntapclient.gui.resultpanel.ResultPanelCtrl; |
27 | import eu.omp.irap.vespa.epntapclient.gui.servicespanel.ServicesPanelCtrl; | 27 | import eu.omp.irap.vespa.epntapclient.gui.servicespanel.ServicesPanelCtrl; |
28 | -import eu.omp.irap.vespa.votable.controller.CantGetVOTableException; | 28 | +import eu.omp.irap.vespa.votable.controller.VOTableException; |
29 | 29 | ||
30 | /** | 30 | /** |
31 | * @author N. Jourdane | 31 | * @author N. Jourdane |
@@ -62,7 +62,7 @@ public class MainPanelCtrl extends EpnTapController { | @@ -62,7 +62,7 @@ public class MainPanelCtrl extends EpnTapController { | ||
62 | public void readServices() { | 62 | public void readServices() { |
63 | try { | 63 | try { |
64 | servicesPanelCtrl.readTable(); | 64 | servicesPanelCtrl.readTable(); |
65 | - } catch (CantGetVOTableException e) { | 65 | + } catch (VOTableException e) { |
66 | displayError("Can not get services.", e); | 66 | displayError("Can not get services.", e); |
67 | } | 67 | } |
68 | view.getServicesPanel().fillTable(servicesPanelCtrl.getVOTableData()); | 68 | view.getServicesPanel().fillTable(servicesPanelCtrl.getVOTableData()); |
@@ -79,7 +79,7 @@ public class MainPanelCtrl extends EpnTapController { | @@ -79,7 +79,7 @@ public class MainPanelCtrl extends EpnTapController { | ||
79 | try { | 79 | try { |
80 | resultPanelCtrl.updateVOTable(serviceURL, query); | 80 | resultPanelCtrl.updateVOTable(serviceURL, query); |
81 | view.getResultsPanel().fillTable(resultPanelCtrl.getVOTableData()); | 81 | view.getResultsPanel().fillTable(resultPanelCtrl.getVOTableData()); |
82 | - } catch (CantGetVOTableException e) { | 82 | + } catch (VOTableException e) { |
83 | displayError("Can not send the query.", e); | 83 | displayError("Can not send the query.", e); |
84 | LOGGER.log(Level.WARNING, "Can not send query.", e); | 84 | LOGGER.log(Level.WARNING, "Can not send query.", e); |
85 | } | 85 | } |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/resultpanel/ResultPanelView.java
@@ -49,8 +49,7 @@ public class ResultPanelView extends VOTableView { | @@ -49,8 +49,7 @@ public class ResultPanelView extends VOTableView { | ||
49 | * Method constructor which customize the result panel, but don't build it from scratch since | 49 | * Method constructor which customize the result panel, but don't build it from scratch since |
50 | * VOTableView is already created by ResultController. | 50 | * VOTableView is already created by ResultController. |
51 | * | 51 | * |
52 | - * @param mainView The main view of the application. | ||
53 | - * @param voTableView The generic view of the VOTable panel. | 52 | + * @param listener The listener of the result view. |
54 | */ | 53 | */ |
55 | public ResultPanelView(ResultPanelListener listener) { | 54 | public ResultPanelView(ResultPanelListener listener) { |
56 | super(); | 55 | super(); |
@@ -58,6 +57,9 @@ public class ResultPanelView extends VOTableView { | @@ -58,6 +57,9 @@ public class ResultPanelView extends VOTableView { | ||
58 | buildResultPanel(); | 57 | buildResultPanel(); |
59 | } | 58 | } |
60 | 59 | ||
60 | + /** | ||
61 | + * Build the panel and add graphical elements to it. | ||
62 | + */ | ||
61 | public void buildResultPanel() { | 63 | public void buildResultPanel() { |
62 | JPanel statusBar = new JPanel(); | 64 | JPanel statusBar = new JPanel(); |
63 | statusBar.setLayout(new BorderLayout()); | 65 | statusBar.setLayout(new BorderLayout()); |
@@ -67,6 +69,11 @@ public class ResultPanelView extends VOTableView { | @@ -67,6 +69,11 @@ public class ResultPanelView extends VOTableView { | ||
67 | add(statusBar, BorderLayout.SOUTH); | 69 | add(statusBar, BorderLayout.SOUTH); |
68 | } | 70 | } |
69 | 71 | ||
72 | + /** | ||
73 | + * Returns the info label, create it if doesn't exist. | ||
74 | + * | ||
75 | + * @return The info label. | ||
76 | + */ | ||
70 | public JLabel getInfoLabel() { | 77 | public JLabel getInfoLabel() { |
71 | return infoLabel == null ? new JLabel() : infoLabel; | 78 | return infoLabel == null ? new JLabel() : infoLabel; |
72 | } | 79 | } |
@@ -78,6 +85,11 @@ public class ResultPanelView extends VOTableView { | @@ -78,6 +85,11 @@ public class ResultPanelView extends VOTableView { | ||
78 | infoLabel.setText(infoText); | 85 | infoLabel.setText(infoText); |
79 | } | 86 | } |
80 | 87 | ||
88 | + /** | ||
89 | + * Returns the button to save the VOTable, create it if doesn't exist. | ||
90 | + * | ||
91 | + * @return The button to save the VOTable. | ||
92 | + */ | ||
81 | public JButton getFileButton() { | 93 | public JButton getFileButton() { |
82 | if (fileButton == null) { | 94 | if (fileButton == null) { |
83 | fileButton = new JButton("Get File"); | 95 | fileButton = new JButton("Get File"); |
src/main/java/eu/omp/irap/vespa/epntapclient/gui/servicespanel/ServicesPanelCtrl.java
@@ -32,8 +32,10 @@ public class ServicesPanelCtrl extends VOTableController implements ServicesPane | @@ -32,8 +32,10 @@ public class ServicesPanelCtrl extends VOTableController implements ServicesPane | ||
32 | /** The logger for the class ServicesPanelCtrl. */ | 32 | /** The logger for the class ServicesPanelCtrl. */ |
33 | private static final Logger LOGGER = Logger.getLogger(ServicesPanelCtrl.class.getName()); | 33 | private static final Logger LOGGER = Logger.getLogger(ServicesPanelCtrl.class.getName()); |
34 | 34 | ||
35 | + /** The controller of the main panel. */ | ||
35 | private MainPanelCtrl mainPanelCtrl; | 36 | private MainPanelCtrl mainPanelCtrl; |
36 | 37 | ||
38 | + /** The view of the services panel. */ | ||
37 | private ServicesPanelView view; | 39 | private ServicesPanelView view; |
38 | 40 | ||
39 | /** The name of the table selected by the user on the table list panel. */ | 41 | /** The name of the table selected by the user on the table list panel. */ |
@@ -43,6 +45,11 @@ public class ServicesPanelCtrl extends VOTableController implements ServicesPane | @@ -43,6 +45,11 @@ public class ServicesPanelCtrl extends VOTableController implements ServicesPane | ||
43 | private String selectedServiceURL; | 45 | private String selectedServiceURL; |
44 | 46 | ||
45 | 47 | ||
48 | + /** | ||
49 | + * Constructor of ServicesPanelCtrl | ||
50 | + * | ||
51 | + * @param mainPanelCtrl The controller of the main panel. | ||
52 | + */ | ||
46 | public ServicesPanelCtrl(MainPanelCtrl mainPanelCtrl) { | 53 | public ServicesPanelCtrl(MainPanelCtrl mainPanelCtrl) { |
47 | this.mainPanelCtrl = mainPanelCtrl; | 54 | this.mainPanelCtrl = mainPanelCtrl; |
48 | targetURL = Consts.DEFAULT_REGISTRY_URL; | 55 | targetURL = Consts.DEFAULT_REGISTRY_URL; |
@@ -50,14 +57,23 @@ public class ServicesPanelCtrl extends VOTableController implements ServicesPane | @@ -50,14 +57,23 @@ public class ServicesPanelCtrl extends VOTableController implements ServicesPane | ||
50 | view = new ServicesPanelView(this); | 57 | view = new ServicesPanelView(this); |
51 | } | 58 | } |
52 | 59 | ||
60 | + /** | ||
61 | + * @return The view of the services panel. | ||
62 | + */ | ||
53 | public ServicesPanelView getView() { | 63 | public ServicesPanelView getView() { |
54 | return view; | 64 | return view; |
55 | } | 65 | } |
56 | 66 | ||
67 | + /** | ||
68 | + * @return The table name of the service selected by the user on the services table list. | ||
69 | + */ | ||
57 | public String getSelectedTableName() { | 70 | public String getSelectedTableName() { |
58 | return selectedTableName; | 71 | return selectedTableName; |
59 | } | 72 | } |
60 | 73 | ||
74 | + /** | ||
75 | + * @return The access URL of the service selected by the user on the services table list. | ||
76 | + */ | ||
61 | public String getSelectedServiceURL() { | 77 | public String getSelectedServiceURL() { |
62 | return selectedServiceURL; | 78 | return selectedServiceURL; |
63 | } | 79 | } |
src/main/java/eu/omp/irap/vespa/epntapclient/service/Queries.java
@@ -23,10 +23,17 @@ package eu.omp.irap.vespa.epntapclient.service; | @@ -23,10 +23,17 @@ package eu.omp.irap.vespa.epntapclient.service; | ||
23 | */ | 23 | */ |
24 | public final class Queries { | 24 | public final class Queries { |
25 | 25 | ||
26 | - private static final String SELECT = "SELECT DISTINCT ivoid, access_url, res_title, " | 26 | + /** |
27 | + * The default SELECT keyword content of the query, which select standard service column names. | ||
28 | + */ | ||
29 | + private static final String SELECT_SERVICE = "SELECT DISTINCT ivoid, access_url, res_title, " | ||
27 | + "short_name, table_name, content_type, res_description, creator_seq, content_level, " | 30 | + "short_name, table_name, content_type, res_description, creator_seq, content_level, " |
28 | + "reference_url, created, updated "; | 31 | + "reference_url, created, updated "; |
29 | 32 | ||
33 | + /** The default SELECT keyword */ | ||
34 | + private static final String SELECT = "SELECT DISTINCT "; | ||
35 | + | ||
36 | + /** The default FROM keyword content of the query, which links all required tables. */ | ||
30 | private static final String FROM = "FROM rr.resource " | 37 | private static final String FROM = "FROM rr.resource " |
31 | + "NATURAL JOIN rr.res_schema " | 38 | + "NATURAL JOIN rr.res_schema " |
32 | + "NATURAL JOIN rr.res_table " | 39 | + "NATURAL JOIN rr.res_table " |
@@ -34,8 +41,10 @@ public final class Queries { | @@ -34,8 +41,10 @@ public final class Queries { | ||
34 | + "NATURAL JOIN rr.res_detail " | 41 | + "NATURAL JOIN rr.res_detail " |
35 | + "NATURAL JOIN rr.capability "; | 42 | + "NATURAL JOIN rr.capability "; |
36 | 43 | ||
44 | + /** The default ORDER BY keyword content of the query. */ | ||
37 | private static final String ORDER_BY = "ORDER BY short_name, table_name"; | 45 | private static final String ORDER_BY = "ORDER BY short_name, table_name"; |
38 | 46 | ||
47 | + /** The default WHERE keyword content of the query, in order to get only TAP services. */ | ||
39 | private static final String WHERE_TAP = "WHERE " | 48 | private static final String WHERE_TAP = "WHERE " |
40 | + "standard_id='ivo://ivoa.net/std/tap' AND " | 49 | + "standard_id='ivo://ivoa.net/std/tap' AND " |
41 | + "intf_type='vs:paramhttp' AND " | 50 | + "intf_type='vs:paramhttp' AND " |
@@ -45,29 +54,34 @@ public final class Queries { | @@ -45,29 +54,34 @@ public final class Queries { | ||
45 | 54 | ||
46 | /** Query to get all TAP services. */ | 55 | /** Query to get all TAP services. */ |
47 | public static final String SELECT_ALL_TAP_SERVICES = | 56 | public static final String SELECT_ALL_TAP_SERVICES = |
48 | - SELECT + FROM + WHERE_TAP + ORDER_BY; | 57 | + SELECT_SERVICE + FROM + WHERE_TAP + ORDER_BY; |
58 | + | ||
59 | + /** Query to get the specified columns (%s #1) of all TAP services. */ | ||
60 | + public static final String SELECT_TAP_SERVICES = | ||
61 | + SELECT + "%s " + FROM + WHERE_TAP; | ||
49 | 62 | ||
50 | - /** Query to get TAP services which implement the specified core. */ | 63 | + /** Query to get TAP services which implement the specified core (%s #1). */ |
51 | public static final String SELECT_ALL_TAP_SERVICES_WHERE_CORE = | 64 | public static final String SELECT_ALL_TAP_SERVICES_WHERE_CORE = |
52 | - SELECT + FROM + WHERE_TAP | 65 | + SELECT_SERVICE + FROM + WHERE_TAP |
53 | + "AND 1=ivo_nocasematch(detail_value, 'ivo://vopdc.obspm/std/%s%%') " + ORDER_BY; | 66 | + "AND 1=ivo_nocasematch(detail_value, 'ivo://vopdc.obspm/std/%s%%') " + ORDER_BY; |
54 | 67 | ||
55 | - /** Query to get the TAP service with the specified ivoid. */ | 68 | + /** Query to get the TAP service with the specified ivoid (%s #1). */ |
56 | public static final String SELECT_ALL_TAP_SERVICES_WHERE_IVOID = | 69 | public static final String SELECT_ALL_TAP_SERVICES_WHERE_IVOID = |
57 | - SELECT + FROM + WHERE_TAP + "AND ivoid = '%s'"; | 70 | + SELECT_SERVICE + FROM + WHERE_TAP + "AND ivoid = '%s'"; |
58 | 71 | ||
72 | + /** Query to get the specified column names (%s #1) of TAP service with the specified ivoid (%s #2). */ | ||
59 | public static final String SELECT_TAP_SERVICES_WHERE_IVOID = | 73 | public static final String SELECT_TAP_SERVICES_WHERE_IVOID = |
60 | - "SELECT DISTINCT %s " + FROM + WHERE_TAP + "AND ivoid = '%s'"; | ||
61 | - | ||
62 | - public static final String SELECT_TAP_SERVICES = | ||
63 | - "SELECT DISTINCT %s " + FROM + WHERE_TAP; | 74 | + SELECT + "%s " + FROM + WHERE_TAP + "AND ivoid = '%s'"; |
64 | 75 | ||
76 | + /** Query to get the specified column names (%s #1) of TAP service with the specified subject (%s #2). */ | ||
65 | public static final String SELECT_TAP_SERVICES_WHERE_SUBJECT = | 77 | public static final String SELECT_TAP_SERVICES_WHERE_SUBJECT = |
66 | - "SELECT DISTINCT %s " + FROM + "NATURAL JOIN rr.res_subject " + WHERE_TAP + "AND (%s)"; | 78 | + SELECT + "%s " + FROM + "NATURAL JOIN rr.res_subject " + WHERE_TAP + "AND (%s)"; |
67 | 79 | ||
80 | + /** Query to get the specified column names (%s #1) of any table. */ | ||
68 | public static final String SELECT_FROM = | 81 | public static final String SELECT_FROM = |
69 | - "SELECT DISTINCT %s FROM %s"; | 82 | + SELECT + "%s FROM %s"; |
70 | 83 | ||
84 | + /** Query to select all columns of any table. */ | ||
71 | public static final String SELECT_ALL = | 85 | public static final String SELECT_ALL = |
72 | "SELECT DISTINCT * FROM %s"; | 86 | "SELECT DISTINCT * FROM %s"; |
73 | //@format | 87 | //@format |
src/main/java/eu/omp/irap/vespa/epntapclient/service/ServiceCtrl.java
@@ -30,7 +30,7 @@ import eu.omp.irap.vespa.epntapclient.voresource.model.Type; | @@ -30,7 +30,7 @@ import eu.omp.irap.vespa.epntapclient.voresource.model.Type; | ||
30 | import eu.omp.irap.vespa.epntapclient.votable.model.Table; | 30 | import eu.omp.irap.vespa.epntapclient.votable.model.Table; |
31 | import eu.omp.irap.vespa.epntapclient.votable.model.VOTABLE; | 31 | import eu.omp.irap.vespa.epntapclient.votable.model.VOTABLE; |
32 | import eu.omp.irap.vespa.votable.Consts; | 32 | import eu.omp.irap.vespa.votable.Consts; |
33 | -import eu.omp.irap.vespa.votable.controller.CantGetVOTableException; | 33 | +import eu.omp.irap.vespa.votable.controller.VOTableException; |
34 | import eu.omp.irap.vespa.votable.controller.VOTableController; | 34 | import eu.omp.irap.vespa.votable.controller.VOTableController; |
35 | import eu.omp.irap.vespa.votable.utils.StringJoiner; | 35 | import eu.omp.irap.vespa.votable.utils.StringJoiner; |
36 | import eu.omp.irap.vespa.votable.votabledata.VOTableData; | 36 | import eu.omp.irap.vespa.votable.votabledata.VOTableData; |
@@ -111,9 +111,9 @@ public class ServiceCtrl { | @@ -111,9 +111,9 @@ public class ServiceCtrl { | ||
111 | /** | 111 | /** |
112 | * @param query The query to get the service. | 112 | * @param query The query to get the service. |
113 | * @return The VOTableData | 113 | * @return The VOTableData |
114 | - * @throws CantGetVOTableException Can not get the VOTable. | 114 | + * @throws VOTableException Can not get the VOTable. |
115 | */ | 115 | */ |
116 | - public static VOTableData getVoTableData(String query) throws CantGetVOTableException { | 116 | + public static VOTableData getVoTableData(String query) throws VOTableException { |
117 | return getVoTableData(getVoTable(query)); | 117 | return getVoTableData(getVoTable(query)); |
118 | } | 118 | } |
119 | 119 | ||
@@ -122,9 +122,9 @@ public class ServiceCtrl { | @@ -122,9 +122,9 @@ public class ServiceCtrl { | ||
122 | * | 122 | * |
123 | * @param voTable The VOTable parsed. | 123 | * @param voTable The VOTable parsed. |
124 | * @return The corresponding VOTableData. | 124 | * @return The corresponding VOTableData. |
125 | - * @throws CantGetVOTableException Can not get the VOTable. | 125 | + * @throws VOTableException Can not get the VOTable. |
126 | */ | 126 | */ |
127 | - public static VOTableData getVoTableData(VOTABLE voTable) throws CantGetVOTableException { | 127 | + public static VOTableData getVoTableData(VOTABLE voTable) throws VOTableException { |
128 | VOTableController.checkVOTable(voTable); | 128 | VOTableController.checkVOTable(voTable); |
129 | 129 | ||
130 | Table table = (Table) voTable.getRESOURCE().get(0).getLINKAndTABLEOrRESOURCE().get(0); | 130 | Table table = (Table) voTable.getRESOURCE().get(0).getLINKAndTABLEOrRESOURCE().get(0); |
@@ -133,29 +133,58 @@ public class ServiceCtrl { | @@ -133,29 +133,58 @@ public class ServiceCtrl { | ||
133 | return dataParser.getData(); | 133 | return dataParser.getData(); |
134 | } | 134 | } |
135 | 135 | ||
136 | - public static VOTABLE getVoTable(String query) throws CantGetVOTableException { | 136 | + /** |
137 | + * @param query The query. | ||
138 | + * @return The VOTable resulting the query. | ||
139 | + * @throws VOTableException Can not get the VOTable. | ||
140 | + */ | ||
141 | + public static VOTABLE getVoTable(String query) throws VOTableException { | ||
137 | VOTableController voTableCtrl = new VOTableController(Consts.DEFAULT_REGISTRY_URL, query); | 142 | VOTableController voTableCtrl = new VOTableController(Consts.DEFAULT_REGISTRY_URL, query); |
138 | voTableCtrl.readTable(); | 143 | voTableCtrl.readTable(); |
139 | return voTableCtrl.getVOTable(); | 144 | return voTableCtrl.getVOTable(); |
140 | } | 145 | } |
141 | 146 | ||
147 | + /** | ||
148 | + * @param ivoid The ivoid of the service. | ||
149 | + * @param parameters The parameters to get, separated by commas. | ||
150 | + * @return A map of <parameter name, value> resulting the request. | ||
151 | + * @throws VOTableException Can not get the VOTable. | ||
152 | + */ | ||
142 | public static Map<String, Object> getParameters(String ivoid, String parameters) | 153 | public static Map<String, Object> getParameters(String ivoid, String parameters) |
143 | - throws CantGetVOTableException { | 154 | + throws VOTableException { |
144 | String query = String.format(Queries.SELECT_TAP_SERVICES_WHERE_IVOID, parameters, ivoid); | 155 | String query = String.format(Queries.SELECT_TAP_SERVICES_WHERE_IVOID, parameters, ivoid); |
145 | return getVoTableData(query).getRowMap(0); | 156 | return getVoTableData(query).getRowMap(0); |
146 | } | 157 | } |
147 | 158 | ||
159 | + /** | ||
160 | + * @param ivoid The ivoid of the service. | ||
161 | + * @param parameters A list of parameters to get. | ||
162 | + * @return A map of <parameter name, value> resulting the request. | ||
163 | + * @throws VOTableException Can not get the VOTable. | ||
164 | + */ | ||
148 | public static Map<String, Object> getParameters(String ivoid, List<String> parameters) | 165 | public static Map<String, Object> getParameters(String ivoid, List<String> parameters) |
149 | - throws CantGetVOTableException { | 166 | + throws VOTableException { |
150 | return getParameters(ivoid, StringJoiner.join(parameters)); | 167 | return getParameters(ivoid, StringJoiner.join(parameters)); |
151 | } | 168 | } |
152 | 169 | ||
153 | - public static Object getParameter(String ivoid, String parameters) | ||
154 | - throws CantGetVOTableException { | ||
155 | - String query = String.format(Queries.SELECT_TAP_SERVICES_WHERE_IVOID, parameters, ivoid); | 170 | + /** |
171 | + * @param ivoid The ivoid of the service. | ||
172 | + * @param parameter The unique parameter to get. | ||
173 | + * @return The value of the parameter. | ||
174 | + * @throws VOTableException Can not get the VOTable. | ||
175 | + */ | ||
176 | + public static Object getParameter(String ivoid, String parameter) | ||
177 | + throws VOTableException { | ||
178 | + String query = String.format(Queries.SELECT_TAP_SERVICES_WHERE_IVOID, parameter, ivoid); | ||
156 | return getVoTableData(query).getCell(0, 0); | 179 | return getVoTableData(query).getCell(0, 0); |
157 | } | 180 | } |
158 | 181 | ||
182 | + /** | ||
183 | + * Convert a date from XMLGregorianCalendar to a string literal. | ||
184 | + * | ||
185 | + * @param date The date to convert | ||
186 | + * @return The serialized date. | ||
187 | + */ | ||
159 | private static String xmlDateToString(XMLGregorianCalendar date) { | 188 | private static String xmlDateToString(XMLGregorianCalendar date) { |
160 | SimpleDateFormat sdf = new SimpleDateFormat(ServiceCtrl.DATE_FORMAT); | 189 | SimpleDateFormat sdf = new SimpleDateFormat(ServiceCtrl.DATE_FORMAT); |
161 | return sdf.format(date.toGregorianCalendar().getTime()); | 190 | return sdf.format(date.toGregorianCalendar().getTime()); |
src/main/java/eu/omp/irap/vespa/epntapclient/voresource/VOResourceCtrl.java
@@ -36,6 +36,7 @@ import com.google.gson.JsonObject; | @@ -36,6 +36,7 @@ import com.google.gson.JsonObject; | ||
36 | 36 | ||
37 | import eu.omp.irap.vespa.epntapclient.service.ServiceCore; | 37 | import eu.omp.irap.vespa.epntapclient.service.ServiceCore; |
38 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException.CantGetVOResourceException; | 38 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException.CantGetVOResourceException; |
39 | +import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException.CantReadVOResourceException; | ||
39 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException.VOResourceIsNotValidException; | 40 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException.VOResourceIsNotValidException; |
40 | import eu.omp.irap.vespa.epntapclient.voresource.model.Resource; | 41 | import eu.omp.irap.vespa.epntapclient.voresource.model.Resource; |
41 | import eu.omp.irap.vespa.votable.utils.CantSendQueryException; | 42 | import eu.omp.irap.vespa.votable.utils.CantSendQueryException; |
@@ -51,30 +52,44 @@ public class VOResourceCtrl { | @@ -51,30 +52,44 @@ public class VOResourceCtrl { | ||
51 | /** The logger for the class VOResourceController. */ | 52 | /** The logger for the class VOResourceController. */ |
52 | private static final Logger LOGGER = Logger.getLogger(VOResourceCtrl.class.getName()); | 53 | private static final Logger LOGGER = Logger.getLogger(VOResourceCtrl.class.getName()); |
53 | 54 | ||
55 | + /** The URL used to get the resources in VOResource (XML) format. */ | ||
54 | private static final String GET_VORESOURCE_URL = "http://voparis-registry.obspm.fr/vo/ivoa/1/voresources.xml"; | 56 | private static final String GET_VORESOURCE_URL = "http://voparis-registry.obspm.fr/vo/ivoa/1/voresources.xml"; |
55 | 57 | ||
58 | + /** The URL used to get the resources in JSON format. */ | ||
56 | private static final String GET_JSONRESOURCES_URL = "http://voparis-registry.obspm.fr/vo/ivoa/1/voresources/search"; | 59 | private static final String GET_JSONRESOURCES_URL = "http://voparis-registry.obspm.fr/vo/ivoa/1/voresources/search"; |
57 | 60 | ||
61 | + /** The maximum number of resulting resources. */ | ||
58 | private static final int MAX_VORESOURCES = 100; | 62 | private static final int MAX_VORESOURCES = 100; |
59 | 63 | ||
64 | + /** The new schema location, since one in the dowloaded VOResource is not compliant. */ | ||
60 | private static final String SCHEMA_LOCATION = "http://www.ivoa.net/xml/RegistryInterface/v1.0 " | 65 | private static final String SCHEMA_LOCATION = "http://www.ivoa.net/xml/RegistryInterface/v1.0 " |
61 | + "http://www.ivoa.net/xml/RegistryInterface/v1.0 " | 66 | + "http://www.ivoa.net/xml/RegistryInterface/v1.0 " |
62 | + "http://www.ivoa.net/xml/VODataService/v1.1 " | 67 | + "http://www.ivoa.net/xml/VODataService/v1.1 " |
63 | + "http://www.ivoa.net/xml/TAPRegExt/v1.0"; | 68 | + "http://www.ivoa.net/xml/TAPRegExt/v1.0"; |
64 | 69 | ||
70 | + /** The URL of the VS namespace, since it is not present in the dowloaded VOResource. */ | ||
65 | private static final String NAMESPACE_VS = "http://www.ivoa.net/xml/TAPRegExt/v1.0"; | 71 | private static final String NAMESPACE_VS = "http://www.ivoa.net/xml/TAPRegExt/v1.0"; |
66 | 72 | ||
73 | + /** The URL of the TR namespace, since it is not present in the dowloaded VOResource. */ | ||
67 | private static final String NAMESPACE_TR = "http://www.ivoa.net/xml/VODataService/v1.1"; | 74 | private static final String NAMESPACE_TR = "http://www.ivoa.net/xml/VODataService/v1.1"; |
68 | 75 | ||
69 | 76 | ||
77 | + /** Private constructor to hide the default public one. */ | ||
70 | private VOResourceCtrl() { | 78 | private VOResourceCtrl() { |
71 | } | 79 | } |
72 | 80 | ||
73 | - public static List<String> getVOResources(ServiceCore type) throws VOResourceException { | 81 | + /** |
82 | + * Get the list of ivoIDs of all resources which implements the specified core. | ||
83 | + * | ||
84 | + * @param core The service core (ie. ObsCore, EpnCore, etc.) | ||
85 | + * @return A list of ivoIDs | ||
86 | + * @throws VOResourceException Can not get the VOResource. | ||
87 | + */ | ||
88 | + public static List<String> getIvoidResources(ServiceCore core) throws VOResourceException { | ||
74 | List<String> ivoidResources; | 89 | List<String> ivoidResources; |
75 | Map<String, String> parameters = new HashMap<>(); | 90 | Map<String, String> parameters = new HashMap<>(); |
76 | 91 | ||
77 | - parameters.put("keywords", "datamodel:\"" + type.toString() + "\""); | 92 | + parameters.put("keywords", "datamodel:\"" + core.toString() + "\""); |
78 | parameters.put("max", String.valueOf(MAX_VORESOURCES)); | 93 | parameters.put("max", String.valueOf(MAX_VORESOURCES)); |
79 | String query = Network.buildQuery(GET_JSONRESOURCES_URL, parameters); | 94 | String query = Network.buildQuery(GET_JSONRESOURCES_URL, parameters); |
80 | try { | 95 | try { |
@@ -86,13 +101,23 @@ public class VOResourceCtrl { | @@ -86,13 +101,23 @@ public class VOResourceCtrl { | ||
86 | return ivoidResources; | 101 | return ivoidResources; |
87 | } | 102 | } |
88 | 103 | ||
89 | - public static List<String> getVOResources(ServiceCore type, List<String> keywords) | 104 | + /** |
105 | + * Get the list of ivoIDs of all resources which implements the specified core and match with | ||
106 | + * the keywords. | ||
107 | + * | ||
108 | + * @param core The service core (ie. ObsCore, EpnCore, etc.) | ||
109 | + * @param keywords A list of keywords to filter the result. The keywords are the subjects of the | ||
110 | + * resources, for example, 'Space plasmas'. | ||
111 | + * @return A list of ivoIDs | ||
112 | + * @throws CantGetVOResourceException Can not get the VOResource. | ||
113 | + */ | ||
114 | + public static List<String> getVOResources(ServiceCore core, List<String> keywords) | ||
90 | throws CantGetVOResourceException { | 115 | throws CantGetVOResourceException { |
91 | List<String> ivoidResources; | 116 | List<String> ivoidResources; |
92 | Map<String, String> parameters = new HashMap<>(); | 117 | Map<String, String> parameters = new HashMap<>(); |
93 | String subjects = StringJoiner.join(keywords); | 118 | String subjects = StringJoiner.join(keywords); |
94 | parameters.put("keywords", | 119 | parameters.put("keywords", |
95 | - "datamodel:\"" + type.toString() + "\" subjects:\"" + subjects + "\""); | 120 | + "datamodel:\"" + core.toString() + "\" subjects:\"" + subjects + "\""); |
96 | parameters.put("max", String.valueOf(MAX_VORESOURCES)); | 121 | parameters.put("max", String.valueOf(MAX_VORESOURCES)); |
97 | 122 | ||
98 | String query = Network.buildQuery(GET_JSONRESOURCES_URL, parameters); | 123 | String query = Network.buildQuery(GET_JSONRESOURCES_URL, parameters); |
@@ -105,6 +130,13 @@ public class VOResourceCtrl { | @@ -105,6 +130,13 @@ public class VOResourceCtrl { | ||
105 | return ivoidResources; | 130 | return ivoidResources; |
106 | } | 131 | } |
107 | 132 | ||
133 | + /** | ||
134 | + * Get a resource from its identifier. | ||
135 | + * | ||
136 | + * @param identifier The resource identifier. | ||
137 | + * @return The returned resource. | ||
138 | + * @throws VOResourceException Can not get the VOResource. | ||
139 | + */ | ||
108 | public static Resource getVOresource(String identifier) throws VOResourceException { | 140 | public static Resource getVOresource(String identifier) throws VOResourceException { |
109 | Map<String, String> parameters = new HashMap<>(); | 141 | Map<String, String> parameters = new HashMap<>(); |
110 | parameters.put("identifier", identifier); | 142 | parameters.put("identifier", identifier); |
@@ -122,7 +154,7 @@ public class VOResourceCtrl { | @@ -122,7 +154,7 @@ public class VOResourceCtrl { | ||
122 | try { | 154 | try { |
123 | changeNamespaces(voResourcePath); | 155 | changeNamespaces(voResourcePath); |
124 | } catch (IOException e) { | 156 | } catch (IOException e) { |
125 | - throw new VOResourceException("The VOResource file can not be modified.", e); | 157 | + throw new CantReadVOResourceException("The VOResource file can not be modified.", e); |
126 | } | 158 | } |
127 | 159 | ||
128 | Resource voResource; | 160 | Resource voResource; |
@@ -140,14 +172,13 @@ public class VOResourceCtrl { | @@ -140,14 +172,13 @@ public class VOResourceCtrl { | ||
140 | return voResource; | 172 | return voResource; |
141 | } | 173 | } |
142 | 174 | ||
143 | - private static void changeNamespaces(String voResourcePath) throws IOException { | ||
144 | - Map<String, String> attributes = new HashMap<>(); | ||
145 | - attributes.put("xsi:schemaLocation", SCHEMA_LOCATION); | ||
146 | - attributes.put("xmlns:vs", NAMESPACE_VS); | ||
147 | - attributes.put("xmlns:tr", NAMESPACE_TR); | ||
148 | - XMLUtils.changeRootAttributes(voResourcePath, attributes); | ||
149 | - } | ||
150 | - | 175 | + /** |
176 | + * Get a list of Resources from a list of ivoid. | ||
177 | + * | ||
178 | + * @param ivoidResources A list of ivoIds | ||
179 | + * @return A list of Resources corresponding to the ivoIDs. | ||
180 | + * @throws VOResourceException Can not get the VOResource. | ||
181 | + */ | ||
151 | public static List<Resource> getVOResources(List<String> ivoidResources) | 182 | public static List<Resource> getVOResources(List<String> ivoidResources) |
152 | throws VOResourceException { | 183 | throws VOResourceException { |
153 | List<Resource> resources = new ArrayList<>(); | 184 | List<Resource> resources = new ArrayList<>(); |
@@ -157,6 +188,26 @@ public class VOResourceCtrl { | @@ -157,6 +188,26 @@ public class VOResourceCtrl { | ||
157 | return resources; | 188 | return resources; |
158 | } | 189 | } |
159 | 190 | ||
191 | + /** | ||
192 | + * Change the namespaces of the VOResource to make the XML file valid against its XSD. | ||
193 | + * | ||
194 | + * @param voResourcePath The file path of the VOResource. | ||
195 | + * @throws IOException Can not read or write on the VOResource file. | ||
196 | + */ | ||
197 | + private static void changeNamespaces(String voResourcePath) throws IOException { | ||
198 | + Map<String, String> attributes = new HashMap<>(); | ||
199 | + attributes.put("xsi:schemaLocation", SCHEMA_LOCATION); | ||
200 | + attributes.put("xmlns:vs", NAMESPACE_VS); | ||
201 | + attributes.put("xmlns:tr", NAMESPACE_TR); | ||
202 | + XMLUtils.changeRootAttributes(voResourcePath, attributes); | ||
203 | + } | ||
204 | + | ||
205 | + /** | ||
206 | + * Parse a JSON query result and returns a list of ivoid. | ||
207 | + * | ||
208 | + * @param getIvoidsResult The JSON object result a query. See {@link #GET_JSONRESOURCES_URL}. | ||
209 | + * @return A list of ivoIDs. | ||
210 | + */ | ||
160 | private static List<String> parseIvoidResources(JsonObject getIvoidsResult) { | 211 | private static List<String> parseIvoidResources(JsonObject getIvoidsResult) { |
161 | JsonArray resources = getIvoidsResult.get("resources").getAsJsonArray(); | 212 | JsonArray resources = getIvoidsResult.get("resources").getAsJsonArray(); |
162 | List<String> ivoidResources = new ArrayList<>(); | 213 | List<String> ivoidResources = new ArrayList<>(); |
src/main/java/eu/omp/irap/vespa/epntapclient/voresource/VOResourceException.java
@@ -17,11 +17,13 @@ | @@ -17,11 +17,13 @@ | ||
17 | package eu.omp.irap.vespa.epntapclient.voresource; | 17 | package eu.omp.irap.vespa.epntapclient.voresource; |
18 | 18 | ||
19 | /** | 19 | /** |
20 | + * The general abstract class for all exceptions concerning the VOResources. | ||
21 | + * | ||
20 | * @author N. Jourdane | 22 | * @author N. Jourdane |
21 | */ | 23 | */ |
22 | -public class VOResourceException extends Exception { | 24 | +public abstract class VOResourceException extends Exception { |
23 | 25 | ||
24 | - /** */ | 26 | + /** The serial version UID. */ |
25 | private static final long serialVersionUID = 1L; | 27 | private static final long serialVersionUID = 1L; |
26 | 28 | ||
27 | 29 | ||
@@ -41,6 +43,7 @@ public class VOResourceException extends Exception { | @@ -41,6 +43,7 @@ public class VOResourceException extends Exception { | ||
41 | } | 43 | } |
42 | 44 | ||
43 | 45 | ||
46 | + /** An exception thrown when we can not read the VOResource. */ | ||
44 | public static class CantReadVOResourceException extends VOResourceException { | 47 | public static class CantReadVOResourceException extends VOResourceException { |
45 | 48 | ||
46 | /** The serial version UID. */ | 49 | /** The serial version UID. */ |
@@ -48,7 +51,7 @@ public class VOResourceException extends Exception { | @@ -48,7 +51,7 @@ public class VOResourceException extends Exception { | ||
48 | 51 | ||
49 | 52 | ||
50 | /** | 53 | /** |
51 | - * @param voTablePath The path of the VOTable. | 54 | + * @param voResourcePath The path of the VOResource. |
52 | * @param e The exception thrown. | 55 | * @param e The exception thrown. |
53 | */ | 56 | */ |
54 | public CantReadVOResourceException(String voResourcePath, Exception e) { | 57 | public CantReadVOResourceException(String voResourcePath, Exception e) { |
@@ -56,6 +59,7 @@ public class VOResourceException extends Exception { | @@ -56,6 +59,7 @@ public class VOResourceException extends Exception { | ||
56 | } | 59 | } |
57 | } | 60 | } |
58 | 61 | ||
62 | + /** An exception thrown when we can not get the VOResource, ie. an error in the query. */ | ||
59 | public static class CantGetVOResourceException extends VOResourceException { | 63 | public static class CantGetVOResourceException extends VOResourceException { |
60 | 64 | ||
61 | /** The serial version UID. */ | 65 | /** The serial version UID. */ |
@@ -63,7 +67,7 @@ public class VOResourceException extends Exception { | @@ -63,7 +67,7 @@ public class VOResourceException extends Exception { | ||
63 | 67 | ||
64 | 68 | ||
65 | /** | 69 | /** |
66 | - * @param voTablePath The path of the VOTable. | 70 | + * @param voResourceRequest The path of the VOResource. |
67 | * @param e The exception thrown. | 71 | * @param e The exception thrown. |
68 | */ | 72 | */ |
69 | public CantGetVOResourceException(String voResourceRequest, Exception e) { | 73 | public CantGetVOResourceException(String voResourceRequest, Exception e) { |
@@ -71,6 +75,9 @@ public class VOResourceException extends Exception { | @@ -71,6 +75,9 @@ public class VOResourceException extends Exception { | ||
71 | } | 75 | } |
72 | } | 76 | } |
73 | 77 | ||
78 | + /** | ||
79 | + * An exception thrown when the VOResource is not valid, ie. it don't have the expected body. | ||
80 | + */ | ||
74 | public static class VOResourceIsNotValidException extends VOResourceException { | 81 | public static class VOResourceIsNotValidException extends VOResourceException { |
75 | 82 | ||
76 | /** The serial version UID. */ | 83 | /** The serial version UID. */ |
@@ -78,7 +85,7 @@ public class VOResourceException extends Exception { | @@ -78,7 +85,7 @@ public class VOResourceException extends Exception { | ||
78 | 85 | ||
79 | 86 | ||
80 | /** | 87 | /** |
81 | - * @param voTablePath The path of the VOTable. | 88 | + * @param voResourcePath The path of the VOResource. |
82 | * @param e The exception thrown. | 89 | * @param e The exception thrown. |
83 | */ | 90 | */ |
84 | public VOResourceIsNotValidException(String voResourcePath, Exception e) { | 91 | public VOResourceIsNotValidException(String voResourcePath, Exception e) { |
src/test/java/eu/omp/irap/vespa/epntapclient/EpnTapConnectionTest.java
@@ -33,7 +33,7 @@ import eu.omp.irap.vespa.epntapclient.service.ServiceCtrl; | @@ -33,7 +33,7 @@ import eu.omp.irap.vespa.epntapclient.service.ServiceCtrl; | ||
33 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException; | 33 | import eu.omp.irap.vespa.epntapclient.voresource.VOResourceException; |
34 | import eu.omp.irap.vespa.epntapclient.voresource.model.Resource; | 34 | import eu.omp.irap.vespa.epntapclient.voresource.model.Resource; |
35 | import eu.omp.irap.vespa.epntapclient.votable.model.VOTABLE; | 35 | import eu.omp.irap.vespa.epntapclient.votable.model.VOTABLE; |
36 | -import eu.omp.irap.vespa.votable.controller.CantGetVOTableException; | 36 | +import eu.omp.irap.vespa.votable.controller.VOTableException; |
37 | import eu.omp.irap.vespa.votable.votabledata.VOTableData; | 37 | import eu.omp.irap.vespa.votable.votabledata.VOTableData; |
38 | 38 | ||
39 | /** | 39 | /** |
@@ -153,10 +153,10 @@ public class EpnTapConnectionTest { | @@ -153,10 +153,10 @@ public class EpnTapConnectionTest { | ||
153 | /** | 153 | /** |
154 | * Unit test for the class {@link EpnTapConnection#getEPNService(String)}. | 154 | * Unit test for the class {@link EpnTapConnection#getEPNService(String)}. |
155 | * | 155 | * |
156 | - * @throws CantGetVOTableException Can not get the VOTable corresponding to the service. | 156 | + * @throws VOTableException Can not get the VOTable corresponding to the service. |
157 | */ | 157 | */ |
158 | @Test | 158 | @Test |
159 | - public void getEPNServiceTest() throws CantGetVOTableException { | 159 | + public void getEPNServiceTest() throws VOTableException { |
160 | LOGGER.info("getEPNServiceTest"); | 160 | LOGGER.info("getEPNServiceTest"); |
161 | EpnTapConnection facade = new EpnTapConnection(); | 161 | EpnTapConnection facade = new EpnTapConnection(); |
162 | 162 | ||
@@ -175,10 +175,10 @@ public class EpnTapConnectionTest { | @@ -175,10 +175,10 @@ public class EpnTapConnectionTest { | ||
175 | /** | 175 | /** |
176 | * Unit test for the class {@link EpnTapConnection#getEPNService(String, List)}. | 176 | * Unit test for the class {@link EpnTapConnection#getEPNService(String, List)}. |
177 | * | 177 | * |
178 | - * @throws CantGetVOTableException Can not get the VOTable corresponding to the service. | 178 | + * @throws VOTableException Can not get the VOTable corresponding to the service. |
179 | */ | 179 | */ |
180 | @Test | 180 | @Test |
181 | - public void getEPNServiceWithAttributesTest() throws CantGetVOTableException { | 181 | + public void getEPNServiceWithAttributesTest() throws VOTableException { |
182 | LOGGER.info("getEPNServiceWithAttributesTest"); | 182 | LOGGER.info("getEPNServiceWithAttributesTest"); |
183 | EpnTapConnection facade = new EpnTapConnection(); | 183 | EpnTapConnection facade = new EpnTapConnection(); |
184 | 184 | ||
@@ -200,10 +200,10 @@ public class EpnTapConnectionTest { | @@ -200,10 +200,10 @@ public class EpnTapConnectionTest { | ||
200 | /** | 200 | /** |
201 | * Unit test for the class {@link EpnTapConnection#getEPNServices()}. | 201 | * Unit test for the class {@link EpnTapConnection#getEPNServices()}. |
202 | * | 202 | * |
203 | - * @throws CantGetVOTableException Can not get the VOTable corresponding to the service. | 203 | + * @throws VOTableException Can not get the VOTable corresponding to the service. |
204 | */ | 204 | */ |
205 | @Test | 205 | @Test |
206 | - public void getEPNServicesTest() throws CantGetVOTableException { | 206 | + public void getEPNServicesTest() throws VOTableException { |
207 | LOGGER.info("getEPNServicesTest"); | 207 | LOGGER.info("getEPNServicesTest"); |
208 | 208 | ||
209 | EpnTapConnection facade = new EpnTapConnection(); | 209 | EpnTapConnection facade = new EpnTapConnection(); |
@@ -234,11 +234,11 @@ public class EpnTapConnectionTest { | @@ -234,11 +234,11 @@ public class EpnTapConnectionTest { | ||
234 | /** | 234 | /** |
235 | * Unit test for the class {@link EpnTapConnection#getEPNServices(List)}. | 235 | * Unit test for the class {@link EpnTapConnection#getEPNServices(List)}. |
236 | * | 236 | * |
237 | - * @throws CantGetVOTableException Can not get the VOTable corresponding to the service. | 237 | + * @throws VOTableException Can not get the VOTable corresponding to the service. |
238 | */ | 238 | */ |
239 | @Test | 239 | @Test |
240 | public void getEPNServicesWithAttributesTest() | 240 | public void getEPNServicesWithAttributesTest() |
241 | - throws CantGetVOTableException { | 241 | + throws VOTableException { |
242 | LOGGER.info("getEPNServicesWithAttributesTest"); | 242 | LOGGER.info("getEPNServicesWithAttributesTest"); |
243 | EpnTapConnection facade = new EpnTapConnection(); | 243 | EpnTapConnection facade = new EpnTapConnection(); |
244 | 244 | ||
@@ -265,12 +265,12 @@ public class EpnTapConnectionTest { | @@ -265,12 +265,12 @@ public class EpnTapConnectionTest { | ||
265 | /** | 265 | /** |
266 | * Unit test for the class {@link EpnTapConnection#getEPNServices(List, List)}. | 266 | * Unit test for the class {@link EpnTapConnection#getEPNServices(List, List)}. |
267 | * | 267 | * |
268 | - * @throws CantGetVOTableException Can not get the VOTable corresponding to the service. | 268 | + * @throws VOTableException Can not get the VOTable corresponding to the service. |
269 | * @throws VOResourceException Can not get the VOresource. | 269 | * @throws VOResourceException Can not get the VOresource. |
270 | */ | 270 | */ |
271 | @Test | 271 | @Test |
272 | public void getEPNServicesWithKeywordsAndAttributesTest() | 272 | public void getEPNServicesWithKeywordsAndAttributesTest() |
273 | - throws CantGetVOTableException, VOResourceException { | 273 | + throws VOTableException, VOResourceException { |
274 | LOGGER.info("getEPNServicesWithKeywordsAndAttributesTest"); | 274 | LOGGER.info("getEPNServicesWithKeywordsAndAttributesTest"); |
275 | EpnTapConnection facade = new EpnTapConnection(); | 275 | EpnTapConnection facade = new EpnTapConnection(); |
276 | 276 | ||
@@ -302,10 +302,10 @@ public class EpnTapConnectionTest { | @@ -302,10 +302,10 @@ public class EpnTapConnectionTest { | ||
302 | /** | 302 | /** |
303 | * Unit test for the class {@link EpnTapConnection#getEPNCoreTableName(String)}. | 303 | * Unit test for the class {@link EpnTapConnection#getEPNCoreTableName(String)}. |
304 | * | 304 | * |
305 | - * @throws CantGetVOTableException Can not get the VOTable corresponding to the service. | 305 | + * @throws VOTableException Can not get the VOTable corresponding to the service. |
306 | */ | 306 | */ |
307 | @Test | 307 | @Test |
308 | - public void getEPNCoreTableNameTest() throws CantGetVOTableException { | 308 | + public void getEPNCoreTableNameTest() throws VOTableException { |
309 | LOGGER.info("getEPNCoreTableNameTest"); | 309 | LOGGER.info("getEPNCoreTableNameTest"); |
310 | EpnTapConnection facade = new EpnTapConnection(); | 310 | EpnTapConnection facade = new EpnTapConnection(); |
311 | 311 | ||
@@ -317,10 +317,10 @@ public class EpnTapConnectionTest { | @@ -317,10 +317,10 @@ public class EpnTapConnectionTest { | ||
317 | /** | 317 | /** |
318 | * Unit test for the class {@link EpnTapConnection#getTAPURL(String)}. | 318 | * Unit test for the class {@link EpnTapConnection#getTAPURL(String)}. |
319 | * | 319 | * |
320 | - * @throws CantGetVOTableException Can not get the VOTable corresponding to the service. | 320 | + * @throws VOTableException Can not get the VOTable corresponding to the service. |
321 | */ | 321 | */ |
322 | @Test | 322 | @Test |
323 | - public void getTAPURLTest() throws CantGetVOTableException { | 323 | + public void getTAPURLTest() throws VOTableException { |
324 | LOGGER.info("getTAPURLTest"); | 324 | LOGGER.info("getTAPURLTest"); |
325 | EpnTapConnection facade = new EpnTapConnection(); | 325 | EpnTapConnection facade = new EpnTapConnection(); |
326 | 326 | ||
@@ -334,10 +334,10 @@ public class EpnTapConnectionTest { | @@ -334,10 +334,10 @@ public class EpnTapConnectionTest { | ||
334 | /** | 334 | /** |
335 | * Unit test for the class {@link EpnTapConnection#sendADQLQuery(String, String)}. | 335 | * Unit test for the class {@link EpnTapConnection#sendADQLQuery(String, String)}. |
336 | * | 336 | * |
337 | - * @throws CantGetVOTableException Can not get the VOTable resulting the query. | 337 | + * @throws VOTableException Can not get the VOTable resulting the query. |
338 | */ | 338 | */ |
339 | @Test | 339 | @Test |
340 | - public void sendADQLQueryTest() throws CantGetVOTableException { | 340 | + public void sendADQLQueryTest() throws VOTableException { |
341 | LOGGER.info("sendADQLQueryTest"); | 341 | LOGGER.info("sendADQLQueryTest"); |
342 | EpnTapConnection facade = new EpnTapConnection(); | 342 | EpnTapConnection facade = new EpnTapConnection(); |
343 | 343 | ||
@@ -360,10 +360,10 @@ public class EpnTapConnectionTest { | @@ -360,10 +360,10 @@ public class EpnTapConnectionTest { | ||
360 | /** | 360 | /** |
361 | * Unit test for the class {@link EpnTapConnection#sendQuery(String, String, Query)}. | 361 | * Unit test for the class {@link EpnTapConnection#sendQuery(String, String, Query)}. |
362 | * | 362 | * |
363 | - * @throws CantGetVOTableException Can not get the VOTable resulting the query. | 363 | + * @throws VOTableException Can not get the VOTable resulting the query. |
364 | */ | 364 | */ |
365 | @Test | 365 | @Test |
366 | - public void sendADQLQueryWithSchemaNameTest() throws CantGetVOTableException { | 366 | + public void sendADQLQueryWithSchemaNameTest() throws VOTableException { |
367 | LOGGER.info("sendADQLQueryWithSchemaNameTest"); | 367 | LOGGER.info("sendADQLQueryWithSchemaNameTest"); |
368 | EpnTapConnection facade = new EpnTapConnection(); | 368 | EpnTapConnection facade = new EpnTapConnection(); |
369 | List<Granule> granules = facade.sendQuery(SERVICE_EPNCOREV2_ACCESS_URL, | 369 | List<Granule> granules = facade.sendQuery(SERVICE_EPNCOREV2_ACCESS_URL, |