Create a language-neutral Dataset in the VitroRequest.

This commit is contained in:
j2blake 2013-08-23 10:40:51 -04:00
parent 9d1fef76ea
commit 22f29cb958
3 changed files with 20 additions and 4 deletions

View file

@ -95,6 +95,14 @@ public class VitroRequest extends HttpServletRequestWrapper {
setAttribute("dataset", dataset);
}
public Dataset getUnfilteredDataset() {
return (Dataset) getAttribute("unfilteredDataset");
}
public void setUnfilteredDataset(Dataset dataset) {
setAttribute("unfilteredDataset", dataset);
}
//Method that retrieves write model, returns special model in case of write model
public OntModel getWriteModel() {
//if special write model doesn't exist use get ont model

View file

@ -115,8 +115,15 @@ public class QueryUtils {
}
public static ResultSet getQueryResults(String queryStr, VitroRequest vreq) {
return getQueryResults(queryStr, vreq.getDataset());
}
Dataset dataset = vreq.getDataset();
public static ResultSet getLanguageNeutralQueryResults(String queryStr, VitroRequest vreq) {
return getQueryResults(queryStr, vreq.getUnfilteredDataset());
}
/** Already have the dataset, so process the query and return the results. */
private static ResultSet getQueryResults(String queryStr, Dataset dataset) {
dataset.getLock().enterCriticalSection(Lock.READ);
QueryExecution qexec = null;
ResultSet results = null;

View file

@ -131,6 +131,7 @@ public class RequestModelsPrep implements Filter {
VitroRequest vreq = new VitroRequest(req);
vreq.setUnfilteredRDFService(rawRdfService);
vreq.setUnfilteredDataset(new RDFServiceDataset(rawRdfService));
List<String> langs = getPreferredLanguages(req);
RDFService rdfService = addLanguageAwareness(langs, rawRdfService);