if (sComments.length()>0)
oQry.add(new TermQuery(new Term("comments",sComments)),BooleanClause.Occur.SHOULD);
String sSegments = Gadgets.chomp(sLuceneIndexPath,File.separator)+"k_bugs"+File.separator+sWorkArea;
if (DebugFile.trace) DebugFile.writeln("new IndexSearcher("+sSegments+")");
IndexSearcher oSearch = new IndexSearcher(sSegments);
Document oDoc;
if (iLimit>0) {
TopDocs oTopSet = oSearch.search(oQry, null, iLimit);
if (oTopSet.scoreDocs!=null) {
ScoreDoc[] oTopDoc = oTopSet.scoreDocs;
int iDocCount = oTopDoc.length;
aRetArr = new BugRecord[iDocCount];
for (int d=0; d<iDocCount; d++) {
oDoc = oSearch.doc(oTopDoc[d].doc);
String[] aAbstract = Gadgets.split(oSearch.doc(oTopDoc[d].doc).get("abstract"), '¨');
aRetArr[d] = new BugRecord(oTopDoc[d].score,
Integer.parseInt(oDoc.get("number")),
oDoc.get("guid"), oDoc.get("container"), oDoc.get("title"),
oDoc.get("author"), oDoc.get("created"), oDoc.get("type"),
oDoc.get("status"), oDoc.get("priority"),
oDoc.get("severity"), oDoc.get("abstract"));
} // next
} else {
aRetArr = null;
}
} else {
Hits oHitSet = oSearch.search(oQry);
int iHitCount = oHitSet.length();
if (iHitCount>0) {
aRetArr = new BugRecord[iHitCount];
for (int h=0; h<iHitCount; h++) {
oDoc = oHitSet.doc(h);