@Override protected Object createValue(IndexReader reader, Entry entryKey) throws IOException { Entry entry = entryKey; String field = entry.field; if (reader.maxDoc() == reader.docFreq(new Term(field))) { return DocIdSet.EMPTY_DOCIDSET; } OpenBitSet res = new OpenBitSet(reader.maxDoc()); TermDocs termDocs = reader.termDocs(); TermEnum termEnum = reader.terms (new Term (field)); try { do { Term term = termEnum.term(); if (term==null || term.field() != field) break; termDocs.seek (termEnum); while (termDocs.next()) { res.fastSet(termDocs.doc()); } } while (termEnum.next()); } finally { termDocs.close(); termEnum.close(); } res.flip(0, reader.maxDoc()); return res; } }
while (termDocs.next()) retArray[termDocs.doc()] = termval;
while (termDocs.next()) retArray[termDocs.doc()] = termval;
while (termDocs.next()) retArray[termDocs.doc()] = termval;
while (termDocs.next()) retArray[termDocs.doc()] = termval;
public int doc() { // The current document info is valid in the base implementation return in.doc(); }
public int doc() { // The current document info is valid in the base implementation return in.doc(); }
private int internalFillDocIdBuffer(final int[] docIdBuffer) throws IOException { int i = 0; for (; i < docIdBuffer.length; i++) { if (!termDocs.next()) break; // todo: think about setting valid = false docIdBuffer[i] = termDocs.doc(); } return i; }
private int innerNextDocs(int[] docIdBuffer) throws IOException { int i = 0; while (i < docIdBuffer.length && termDocs.next()) { docIdBuffer[i++] = termDocs.doc(); } return i; }
/** * Converts terms docs into an array of resources. */ public static Resource[] hitsToResourceArray(final TermDocs termDocs, IndexReader indexReader, LuceneSearchEngine searchEngine) throws IOException { ArrayList<Resource> list = new ArrayList<Resource>(); while (termDocs.next()) { list.add(new LuceneResource(indexReader.document(termDocs.doc()), termDocs.doc(), searchEngine.getSearchEngineFactory())); } return list.toArray(new Resource[list.size()]); }
/** * @inheritDoc */ public final boolean next() throws IOException { boolean hasNext = in.next(); while (hasNext && deleted.get(in.doc())) { hasNext = in.next(); } return hasNext; }
/** * @inheritDoc */ public final boolean next() throws IOException { boolean hasNext = in.next(); while (hasNext && deleted.get(in.doc())) { hasNext = in.next(); } return hasNext; }
private BitSet initShareableNodes(IndexReader delegatee) throws IOException { BitSet shareableNodes = new BitSet(); TermDocs tDocs = delegatee.termDocs(new Term(FieldNames.SHAREABLE_NODE, "")); try { while (tDocs.next()) { shareableNodes.set(tDocs.doc()); } } finally { tDocs.close(); } return shareableNodes; }
public boolean collect(Term term, TermDocs tDocs) throws IOException { NodeId id = new NodeId(term.text()); while (tDocs.next()) { int doc = tDocs.doc(); if (parents.containsKey(id)) { parents.put(id, doc); } } return true; } });
public boolean collect(Term term, TermDocs tDocs) throws IOException { NodeId id = new NodeId(term.text()); while (tDocs.next()) { int doc = tDocs.doc(); if (parents.containsKey(id)) { parents.put(id, doc); } } return true; } });
@Override public boolean advanceToNextIntersection(final TermDocs termDocs) throws IOException { while (termDocs.next()) { if (this.bits.get(termDocs.doc())) { return true; } } return false; }
private Integer getDocIdForIssueId(final IndexReader reader, final String issueId) throws IOException { final TermDocs docs = reader.termDocs(new Term(SystemSearchConstants.forLastViewedDate().getIndexField(), issueId)); return (!docs.next()) ? null : docs.doc(); }
public boolean skipTo(int i) throws IOException { if (!in.skipTo(i)) return false; if (_nextDelDoc!=DocIdSetIterator.NO_MORE_DOCS){ int doc = in.doc(); if (doc<_nextDelDoc) return true; _nextDelDoc = _delSetIterator.advance(doc); if (doc==_nextDelDoc) return next(); } return true; } }
public String search(String page) { String pageAbstract = null; try { TermDocs termDocs = indexReader.termDocs(keyTerm.createTerm(page)); if (termDocs.next()) { Document doc = indexReader.document(termDocs.doc()); pageAbstract = new String(doc.getBinaryValue("xml")); } } catch (Exception e) { return new String(); } return pageAbstract; }
public Integer search(String key) { Integer ret = null; try { TermDocs termDocs = indexReader.termDocs(keyTerm.createTerm(key)); if (termDocs.next()) { Document doc = indexReader.document(termDocs.doc()); ret = SerialUtils.toInt(doc.getBinaryValue(valueFieldName)); } } catch (IOException e) { logger.error(e); } return ret; }