Revision 52806
Added by Tsampikos Livisianos over 5 years ago
SearchApiService.java | ||
---|---|---|
181 | 181 |
} |
182 | 182 |
|
183 | 183 |
@GET |
184 |
@Path("/api/other") |
|
185 |
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) |
|
186 |
public Response fetchOther(@QueryParam("q") String keywords, |
|
187 |
@QueryParam("doi") final String doi, |
|
188 |
@QueryParam("sortBy") final String sortBy, |
|
189 |
@DefaultValue("0") @QueryParam("page") int offset, |
|
190 |
@DefaultValue("10") @QueryParam("size") int limit, |
|
191 |
@QueryParam("refine") @DefaultValue("false") boolean refine, |
|
192 |
@QueryParam("fields") final List<String> fields, |
|
193 |
@QueryParam("fq") final List<String> fieldQueries, |
|
194 |
@QueryParam("format") final String format, |
|
195 |
@Context HttpServletRequest request) { |
|
196 |
|
|
197 |
String simpleQuery = buildSearchRequest(RequestResponseHandler.Entity.OTHER, keywords, doi, sortBy, fieldQueries); |
|
198 |
return getResponseByEntity(simpleQuery, RequestResponseHandler.Entity.OTHER, offset, limit, format, request, refine, fields, fieldQueries); |
|
199 |
} |
|
200 |
|
|
201 |
@GET |
|
202 |
@Path("/api/other/count") |
|
203 |
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) |
|
204 |
public Response fetchOtherCount(@QueryParam("q") String query, |
|
205 |
@QueryParam("format") final String format, |
|
206 |
@QueryParam("fq") final List<String> fieldQueries, |
|
207 |
@Context final HttpServletRequest request) { |
|
208 |
String fullQuery = buildSearchRequest(RequestResponseHandler.Entity.OTHER, query, fieldQueries); |
|
209 |
return getCount(request, fullQuery, format, fieldQueries); |
|
210 |
} |
|
211 |
|
|
212 |
@GET |
|
213 |
@Path("/api/other/{otherid}") |
|
214 |
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) |
|
215 |
public Response fetchOther(@PathParam("otherid") String datasetid, |
|
216 |
@QueryParam("format") final String format, |
|
217 |
@QueryParam("fq") final List<String> fieldQueries, |
|
218 |
@Context final HttpServletRequest request) { |
|
219 |
return getResponseByEntityId(request, RequestResponseHandler.Entity.OTHER, datasetid, format, fieldQueries); |
|
220 |
} |
|
221 |
@GET |
|
184 | 222 |
@Path("/api/projects") |
185 | 223 |
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) |
186 | 224 |
public Response fetchProjects(@QueryParam("q") String keywords, |
... | ... | |
301 | 339 |
} |
302 | 340 |
|
303 | 341 |
@GET |
342 |
@Path("/api/projects/{projectId}/other/count") |
|
343 |
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) |
|
344 |
public Response fetchProjectOtherCount(@PathParam("projectId") String projectId, |
|
345 |
@DefaultValue("0") @QueryParam("page") int offset, |
|
346 |
@DefaultValue("10") @QueryParam("size") int limit, |
|
347 |
@QueryParam("format") final String format, |
|
348 |
@QueryParam("fq") final List<String> fieldQueries, |
|
349 |
@Context HttpServletRequest request) { |
|
350 |
String fullQuery = builtEntity2EntityRelationQuery(RequestResponseHandler.Entity.OTHER, "relprojectid", projectId, fieldQueries); |
|
351 |
return getCount(request, fullQuery, format, fieldQueries); |
|
352 |
} |
|
353 |
|
|
354 |
@GET |
|
355 |
@Path("/api/projects/{projectId}/other") |
|
356 |
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) |
|
357 |
public Response fetchProjectOther(@PathParam("projectId") String projectId, |
|
358 |
@DefaultValue("0") @QueryParam("page") int offset, |
|
359 |
@DefaultValue("10") @QueryParam("size") int limit, |
|
360 |
@QueryParam("format") final String format, |
|
361 |
@QueryParam("fq") final List<String> fieldQueries, |
|
362 |
@Context HttpServletRequest request) { |
|
363 |
|
|
364 |
String fullQuery = builtEntity2EntityRelationQuery(RequestResponseHandler.Entity.OTHER, "relprojectid", projectId, fieldQueries); |
|
365 |
return getResponseByEntity(fullQuery, RequestResponseHandler.Entity.OTHER, offset, limit, format, request, false, null, fieldQueries); |
|
366 |
} |
|
367 |
|
|
368 |
@GET |
|
304 | 369 |
@Path("/api/datasources") |
305 | 370 |
@Produces({MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML}) |
306 | 371 |
public Response fetchDatasources(@QueryParam("q") String keywords, |
... | ... | |
890 | 955 |
} else if (type.equalsIgnoreCase(RequestResponseHandler.Entity.SOFTWARE.getPlural())) { |
891 | 956 |
return RequestResponseHandler.Entity.SOFTWARE; |
892 | 957 |
|
958 |
} else if (type.equalsIgnoreCase(RequestResponseHandler.Entity.OTHER.getPlural())) { |
|
959 |
return RequestResponseHandler.Entity.OTHER; |
|
960 |
|
|
893 | 961 |
} else if (type.equalsIgnoreCase(RequestResponseHandler.Entity.PROJECT.getPlural())) { |
894 | 962 |
return RequestResponseHandler.Entity.PROJECT; |
895 | 963 |
|
Also available in: Unified diff
add other research products api