From 06454ae9cb7024b0fe7921a211ac1e74ac12188c Mon Sep 17 00:00:00 2001 From: rjy7 Date: Thu, 3 Feb 2011 19:17:56 +0000 Subject: [PATCH] NIHVIVO-2003 Remove use of model in AutoCompleteController. Get individual names from the search results instead. --- .../controller/AutocompleteController.java | 87 ++++--------------- 1 file changed, 16 insertions(+), 71 deletions(-) diff --git a/webapp/src/edu/cornell/mannlib/vitro/webapp/search/controller/AutocompleteController.java b/webapp/src/edu/cornell/mannlib/vitro/webapp/search/controller/AutocompleteController.java index 0c3963566..13ac5573a 100644 --- a/webapp/src/edu/cornell/mannlib/vitro/webapp/search/controller/AutocompleteController.java +++ b/webapp/src/edu/cornell/mannlib/vitro/webapp/search/controller/AutocompleteController.java @@ -4,14 +4,11 @@ package edu.cornell.mannlib.vitro.webapp.search.controller; import java.io.IOException; import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import java.util.HashMap; -import java.util.LinkedList; import java.util.List; import java.util.Map; -import javax.servlet.ServletConfig; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -32,17 +29,14 @@ import org.apache.lucene.search.TermQuery; import org.apache.lucene.search.TopDocs; import org.apache.lucene.search.WildcardQuery; -import edu.cornell.mannlib.vitro.webapp.beans.Individual; import edu.cornell.mannlib.vitro.webapp.controller.VitroRequest; import edu.cornell.mannlib.vitro.webapp.controller.freemarker.FreemarkerHttpServlet; -import edu.cornell.mannlib.vitro.webapp.dao.IndividualDao; import edu.cornell.mannlib.vitro.webapp.flags.PortalFlag; import edu.cornell.mannlib.vitro.webapp.search.SearchException; import edu.cornell.mannlib.vitro.webapp.search.lucene.Entity2LuceneDoc; -import edu.cornell.mannlib.vitro.webapp.search.lucene.LuceneIndexer; +import edu.cornell.mannlib.vitro.webapp.search.lucene.Entity2LuceneDoc.VitroLuceneTermNames; import edu.cornell.mannlib.vitro.webapp.search.lucene.LuceneIndexFactory; import edu.cornell.mannlib.vitro.webapp.search.lucene.LuceneSetup; -import edu.cornell.mannlib.vitro.webapp.utils.FlagMathUtils; import freemarker.template.Configuration; /** @@ -84,8 +78,7 @@ public class AutocompleteController extends FreemarkerHttpServlet{ log.error("makeUsableBeans() could not get IndividualDao "); doSearchError(map, config, request, response); return; - } - IndividualDao iDao = vreq.getWebappDaoFactory().getIndividualDao(); + } int maxHitSize = defaultMaxSearchSize; @@ -135,13 +128,17 @@ public class AutocompleteController extends FreemarkerHttpServlet{ for(int i=0; i terms = new LinkedList(); - int portalNumericId = flag.getFlag1Numeric(); - Long[] bits = FlagMathUtils.numeric2numerics(portalNumericId); - for (Long bit : bits) { - terms.add(new TermQuery(new Term(Entity2LuceneDoc.term.PORTAL, Long - .toString(bit)))); - } - - // make a boolean OR query for all of those terms - BooleanQuery boolQuery = new BooleanQuery(); - if (terms.size() > 0) { - for (TermQuery term : terms) { - boolQuery.add(term, BooleanClause.Occur.SHOULD); - } - return boolQuery; - } else { - //we have no flags set, so no flag filtering - return null; - } - } - private QueryParser getQueryParser(String searchField, Analyzer analyzer){ // searchField indicates which field to search against when there is no term // indicated in the query string.