package mircoders.search;
-import java.util.*;
+import java.util.Map;
+import javax.servlet.http.HttpServletRequest;
-import javax.servlet.*;
-import javax.servlet.http.*;
-import mir.entity.*;
-
-import org.apache.lucene.index.*;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
-import freemarker.template.*;
+import mir.entity.Entity;
+
public class KeywordSearchTerm extends SearchTerm{
-
+
public String templateVariable;
public String dataField;
public String matchField;
public String paramName;
public String partOfEntity;
-
-
+
+
public KeywordSearchTerm(String anEntityPart,String aParamName,String aMatchField,String aDataField, String aTemplateVariable){
partOfEntity = anEntityPart;
paramName = aParamName;
dataField = aDataField;
templateVariable = aTemplateVariable;
}
-
+
public void index(Document doc, Entity entity){
doc.add(Field.Keyword(matchField,entity.getValue(partOfEntity)));
public String makeTerm(HttpServletRequest req){
String wanted = req.getParameter(paramName);
if (wanted != null && !(wanted.equals(""))){
- return matchField + ":" + "\"" + wanted + "\"";
+ return matchField + ":" + "\"" + wanted + "\"";
}
else {
- return null;
+ return null;
}
}
- public void returnMeta(SimpleHash result,Document doc){
- result.put(templateVariable,new SimpleScalar(doc.get(dataField)));
+ public void returnMeta(Map result,Document doc){
+ result.put(templateVariable,doc.get(dataField));
}
-
+
}