Skip to content
Snippets Groups Projects
Commit 929a83c0 authored by Jesper Zedlitz's avatar Jesper Zedlitz
Browse files

Parameter q, fq und modified_since durchreichen

parent 3dd230ff
No related branches found
No related tags found
1 merge request!3Resolve "Suchanfragen weiterleiten"
This commit is part of merge request !3. Comments created here will be created in the context of that merge request.
package de.landsh.opendata.catalogproxy; package de.landsh.opendata.catalogproxy;
import org.apache.commons.lang3.StringUtils;
import org.apache.jena.rdf.model.Model; import org.apache.jena.rdf.model.Model;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
...@@ -14,6 +15,7 @@ import java.io.IOException; ...@@ -14,6 +15,7 @@ import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.io.Writer; import java.io.Writer;
import java.net.URL; import java.net.URL;
import java.net.URLEncoder;
@Controller @Controller
public class FilterController { public class FilterController {
...@@ -26,13 +28,33 @@ public class FilterController { ...@@ -26,13 +28,33 @@ public class FilterController {
private CatalogFilter catalogFilter; private CatalogFilter catalogFilter;
@RequestMapping(value = "/catalog.xml", produces = "application/rdf+xml") @RequestMapping(value = "/catalog.xml", produces = "application/rdf+xml")
public void catalog(@RequestParam(required = false) Integer page, HttpServletResponse response) throws IOException { public void catalog(@RequestParam(required = false) Integer page,
@RequestParam(required = false) String q,
@RequestParam(required = false) String fq,
@RequestParam(required = false, name="modified_since") String modifiedSince,
HttpServletResponse response) throws IOException {
if (page == null) if (page == null)
page = 1; page = 1;
log.debug("catalog.xml?page={}", page); log.debug("catalog.xml?page={}", page);
final InputStream is = new URL(remoteURL + "catalog.xml?page=" + page).openStream(); final StringBuilder url = new StringBuilder(remoteURL);
url.append("catalog.xml?page=");
url.append(page);
if(StringUtils.isNotBlank(modifiedSince)) {
url.append("&modified_since=");
url.append(URLEncoder.encode(modifiedSince, "utf-8"));
}
if(StringUtils.isNotBlank(q)) {
url.append("&q=");
url.append(URLEncoder.encode(q, "utf-8"));
}
if(StringUtils.isNotBlank(fq)) {
url.append("&fq=");
url.append(URLEncoder.encode(fq, "utf-8"));
}
final InputStream is = new URL(url.toString()).openStream();
final Model model = catalogFilter.work(is); final Model model = catalogFilter.work(is);
is.close(); is.close();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment