public IndexFieldTerm get(Object key, int flags) { String termString = (String) key; IndexFieldTerm indexFieldTerm = terms.get(termString); // see if we initialized already... if (indexFieldTerm == null) { indexFieldTerm = new IndexFieldTerm(termString, fieldName, indexLookup, flags); terms.put(termString, indexFieldTerm); } indexFieldTerm.validateFlags(flags); return indexFieldTerm; }
private String getFlagsString(int flags2) { String flagsString = null; if ((flags2 & IndexLookup.FLAG_FREQUENCIES) != 0) { flagsString = anddToFlagsString(flagsString, "_FREQUENCIES"); } if ((flags2 & IndexLookup.FLAG_POSITIONS) != 0) { flagsString = anddToFlagsString(flagsString, "_POSITIONS"); } if ((flags2 & IndexLookup.FLAG_OFFSETS) != 0) { flagsString = anddToFlagsString(flagsString, "_OFFSETS"); } if ((flags2 & IndexLookup.FLAG_PAYLOADS) != 0) { flagsString = anddToFlagsString(flagsString, "_PAYLOADS"); } if ((flags2 & IndexLookup.FLAG_CACHE) != 0) { flagsString = anddToFlagsString(flagsString, "_CACHE"); } return flagsString; }
private String getCalledStatement(int flags2) { String calledFlagsCall1 = getFlagsString(flags); String calledFlagsCall2 = getFlagsString(flags2); String callStatement1 = getCallStatement(calledFlagsCall1); String callStatement2 = getCallStatement(calledFlagsCall2); return " " + callStatement1 + " and " + callStatement2 + " "; }
public void validateFlags(int flags2) { if ((this.flags & flags2) < flags2) { throw new ElasticsearchException("You must call get with all required flags! Instead of " + getCalledStatement(flags2) + "call " + getCallStatement(flags2 | this.flags) + " once"); } }
public IndexFieldTerm(String term, String fieldName, LeafIndexLookup indexLookup, int flags) { assert fieldName != null; this.fieldName = fieldName; assert term != null; this.term = term; assert indexLookup != null; identifier = new Term(fieldName, (String) term); this.flags = flags; boolean doRecord = ((flags & IndexLookup.FLAG_CACHE) > 0); if (!doRecord) { iterator = new PositionIterator(this); } else { iterator = new CachedPositionIterator(this); } setReader(indexLookup.getReader()); setDocument(indexLookup.getDocId()); try { termStats = indexLookup.getIndexSearcher().termStatistics(identifier, TermContext.build(indexLookup.getReaderContext(), identifier)); } catch (IOException e) { throw new ElasticsearchException("Cannot get term statistics: ", e); } }
private void setReader(LeafReader reader) { try { postings = getPostings(convertToLuceneFlags(flags), reader);
public void setDocIdInTerms(int docId) { for (IndexFieldTerm ti : terms.values()) { ti.setDocument(docId); } }
public void nextDoc() throws IOException { resetted = false; currentPos = 0; freq = indexFieldTerm.tf(); postings = indexFieldTerm.postings; }
public void validateFlags(int flags2) { if ((this.flags & flags2) < flags2) { throw new ElasticsearchException("You must call get with all required flags! Instead of " + getCalledStatement(flags2) + "call " + getCallStatement(flags2 | this.flags) + " once"); } }
public IndexFieldTerm(String term, String fieldName, LeafIndexLookup indexLookup, int flags) { assert fieldName != null; this.fieldName = fieldName; assert term != null; this.term = term; assert indexLookup != null; identifier = new Term(fieldName, (String) term); this.flags = flags; boolean doRecord = ((flags & IndexLookup.FLAG_CACHE) > 0); if (!doRecord) { iterator = new PositionIterator(this); } else { iterator = new CachedPositionIterator(this); } setReader(indexLookup.getReader()); setDocument(indexLookup.getDocId()); try { termStats = indexLookup.getIndexSearcher().termStatistics(identifier, TermContext.build(indexLookup.getReaderContext(), identifier)); } catch (IOException e) { throw new ElasticsearchException("Cannot get term statistics: ", e); } }
private void setReader(LeafReader reader) { try { postings = getPostings(convertToLuceneFlags(flags), reader);
public void setDocIdInTerms(int docId) { for (IndexFieldTerm ti : terms.values()) { ti.setDocument(docId); } }
public void nextDoc() throws IOException { resetted = false; currentPos = 0; freq = indexFieldTerm.tf(); postings = indexFieldTerm.postings; }
private String getCallStatement(int flags2) { String calledFlags = getFlagsString(flags2); String callStatement = getCallStatement(calledFlags); return " " + callStatement + " "; }
public IndexFieldTerm get(Object key, int flags) { String termString = (String) key; IndexFieldTerm indexFieldTerm = terms.get(termString); // see if we initialized already... if (indexFieldTerm == null) { indexFieldTerm = new IndexFieldTerm(termString, fieldName, indexLookup, flags); terms.put(termString, indexFieldTerm); } indexFieldTerm.validateFlags(flags); return indexFieldTerm; }
private String getFlagsString(int flags2) { String flagsString = null; if ((flags2 & IndexLookup.FLAG_FREQUENCIES) != 0) { flagsString = anddToFlagsString(flagsString, "_FREQUENCIES"); } if ((flags2 & IndexLookup.FLAG_POSITIONS) != 0) { flagsString = anddToFlagsString(flagsString, "_POSITIONS"); } if ((flags2 & IndexLookup.FLAG_OFFSETS) != 0) { flagsString = anddToFlagsString(flagsString, "_OFFSETS"); } if ((flags2 & IndexLookup.FLAG_PAYLOADS) != 0) { flagsString = anddToFlagsString(flagsString, "_PAYLOADS"); } if ((flags2 & IndexLookup.FLAG_CACHE) != 0) { flagsString = anddToFlagsString(flagsString, "_CACHE"); } return flagsString; }
private String getCallStatement(int flags2) { String calledFlags = getFlagsString(flags2); String callStatement = getCallStatement(calledFlags); return " " + callStatement + " "; }
private String getCalledStatement(int flags2) { String calledFlagsCall1 = getFlagsString(flags); String calledFlagsCall2 = getFlagsString(flags2); String callStatement1 = getCallStatement(calledFlagsCall1); String callStatement2 = getCallStatement(calledFlagsCall2); return " " + callStatement1 + " and " + callStatement2 + " "; }