List of usage examples for org.apache.lucene.util BytesRef utf8ToString
public String utf8ToString()
From source file:org.apache.oodt.cas.filemgr.cli.action.LuceneQueryCliAction.java
License:Apache License
private QueryCriteria generateCASQuery(Query luceneQuery) throws CatalogException, QueryFormulationException { if (luceneQuery instanceof TermQuery) { Term t = ((TermQuery) luceneQuery).getTerm(); if (t.field().equals(FREE_TEXT_BLOCK)) { throw new CatalogException("Free text blocks not supported!"); } else {/*from w w w.j a v a 2 s . c o m*/ return new TermQueryCriteria(t.field(), t.text()); } } else if (luceneQuery instanceof PhraseQuery) { Term[] t = ((PhraseQuery) luceneQuery).getTerms(); if (t[0].field().equals(FREE_TEXT_BLOCK)) { throw new CatalogException("Free text blocks not supported!"); } else { BooleanQueryCriteria bqc = new BooleanQueryCriteria(); bqc.setOperator(BooleanQueryCriteria.AND); for (Term aT : t) { bqc.addTerm(new TermQueryCriteria(aT.field(), aT.text())); } return bqc; } } else if (luceneQuery instanceof TermRangeQuery) { BytesRef startT = ((TermRangeQuery) luceneQuery).getLowerTerm(); BytesRef endT = ((TermRangeQuery) luceneQuery).getUpperTerm(); //TODO CHECK Inclusive boolean inc = false; if (((TermRangeQuery) luceneQuery).includesLower() && ((TermRangeQuery) luceneQuery).includesUpper()) { inc = true; } return new RangeQueryCriteria(((TermRangeQuery) luceneQuery).getField(), startT.utf8ToString(), endT.utf8ToString(), inc); } else if (luceneQuery instanceof BooleanQuery) { List<BooleanClause> clauses = ((BooleanQuery) luceneQuery).clauses(); BooleanQueryCriteria bqc = new BooleanQueryCriteria(); bqc.setOperator(BooleanQueryCriteria.AND); for (BooleanClause clause : clauses) { if (clause.getOccur().equals(BooleanClause.Occur.SHOULD)) { bqc.setOperator(BooleanQueryCriteria.OR); } bqc.addTerm(generateCASQuery(clause.getQuery())); } return bqc; } else { throw new CatalogException("Error parsing query! Cannot determine clause type: [" + luceneQuery.getClass().getName() + "] !"); } }
From source file:org.apache.oodt.cas.filemgr.tools.CatalogSearch.java
License:Apache License
public static void GenerateCASQuery(org.apache.oodt.cas.filemgr.structs.Query casQuery, Query luceneQuery) { if (luceneQuery instanceof TermQuery) { Term t = ((TermQuery) luceneQuery).getTerm(); if (!t.field().equals(freeTextBlock)) { casQuery.addCriterion(new TermQueryCriteria(t.field(), t.text())); }/* w w w . ja v a2s . c o m*/ } else if (luceneQuery instanceof PhraseQuery) { Term[] t = ((PhraseQuery) luceneQuery).getTerms(); if (!t[0].field().equals(freeTextBlock)) { for (Term aT : t) { casQuery.addCriterion(new TermQueryCriteria(aT.field(), aT.text())); } } } else if (luceneQuery instanceof TermRangeQuery) { BytesRef startT = ((TermRangeQuery) luceneQuery).getLowerTerm(); BytesRef endT = ((TermRangeQuery) luceneQuery).getUpperTerm(); //TODO CHECK THIS RANGE! casQuery.addCriterion(new RangeQueryCriteria(((TermRangeQuery) luceneQuery).getField(), startT.utf8ToString(), endT.utf8ToString())); } else if (luceneQuery instanceof BooleanQuery) { List<BooleanClause> clauses = ((BooleanQuery) luceneQuery).clauses(); for (BooleanClause clause : clauses) { GenerateCASQuery(casQuery, (clause).getQuery()); } } else { System.out.println("Error Parsing Query"); System.exit(-1); } }
From source file:org.apache.oodt.cas.filemgr.tools.QueryTool.java
License:Apache License
public void generateCASQuery(org.apache.oodt.cas.filemgr.structs.Query casQuery, Query luceneQuery) { if (luceneQuery instanceof TermQuery) { Term t = ((TermQuery) luceneQuery).getTerm(); if (!t.field().equals(freeTextBlock)) { casQuery.addCriterion(new TermQueryCriteria(t.field(), t.text())); }//from w w w . j a v a2 s .c om } else if (luceneQuery instanceof PhraseQuery) { Term[] t = ((PhraseQuery) luceneQuery).getTerms(); if (!t[0].field().equals(freeTextBlock)) { for (Term aT : t) { casQuery.addCriterion(new TermQueryCriteria(aT.field(), aT.text())); } } } else if (luceneQuery instanceof TermRangeQuery) { BytesRef startT = ((TermRangeQuery) luceneQuery).getLowerTerm(); BytesRef endT = ((TermRangeQuery) luceneQuery).getUpperTerm(); casQuery.addCriterion(new RangeQueryCriteria(((TermRangeQuery) luceneQuery).getField(), startT.utf8ToString(), endT.utf8ToString())); } else if (luceneQuery instanceof BooleanQuery) { List<BooleanClause> clauses = ((BooleanQuery) luceneQuery).clauses(); for (BooleanClause clause : clauses) { generateCASQuery(casQuery, (clause).getQuery()); } } else { throw new RuntimeException("Error parsing query! Cannot determine clause type: [" + luceneQuery.getClass().getName() + "] !"); } }
From source file:org.apache.solr.handler.component.FieldFacetStats.java
License:Apache License
public boolean facetTermNum(int docID, int statsTermNum) throws IOException { if (topLevelSortedValues == null) { topLevelSortedValues = FieldCache.DEFAULT.getTermsIndex(topLevelReader, name); }// w ww.j a v a 2s. c o m int term = topLevelSortedValues.getOrd(docID); int arrIdx = term; if (arrIdx >= 0 && arrIdx < topLevelSortedValues.getValueCount()) { final BytesRef br; if (term == -1) { br = null; } else { br = tempBR; topLevelSortedValues.lookupOrd(term, tempBR); } String key = br == null ? null : br.utf8ToString(); while (facetStatsTerms.size() <= statsTermNum) { facetStatsTerms.add(new HashMap<String, Integer>()); } final Map<String, Integer> statsTermCounts = facetStatsTerms.get(statsTermNum); Integer statsTermCount = statsTermCounts.get(key); if (statsTermCount == null) { statsTermCounts.put(key, 1); } else { statsTermCounts.put(key, statsTermCount + 1); } return true; } return false; }
From source file:org.apache.solr.handler.component.TermVectorComponent.java
License:Apache License
private void mapOneVector(NamedList<Object> docNL, FieldOptions fieldOptions, IndexReader reader, int docID, TermsEnum termsEnum, String field) throws IOException { NamedList<Object> fieldNL = new NamedList<Object>(); docNL.add(field, fieldNL);// ww w . j a v a2 s. c om BytesRef text; DocsAndPositionsEnum dpEnum = null; while ((text = termsEnum.next()) != null) { String term = text.utf8ToString(); NamedList<Object> termInfo = new NamedList<Object>(); fieldNL.add(term, termInfo); final int freq = (int) termsEnum.totalTermFreq(); if (fieldOptions.termFreq == true) { termInfo.add("tf", freq); } dpEnum = termsEnum.docsAndPositions(null, dpEnum); boolean useOffsets = false; boolean usePositions = false; if (dpEnum != null) { dpEnum.nextDoc(); usePositions = fieldOptions.positions; useOffsets = fieldOptions.offsets; } NamedList<Integer> positionsNL = null; NamedList<Number> theOffsets = null; if (usePositions || useOffsets) { for (int i = 0; i < freq; i++) { final int pos = dpEnum.nextPosition(); if (usePositions && pos >= 0) { if (positionsNL == null) { positionsNL = new NamedList<Integer>(); termInfo.add("positions", positionsNL); } positionsNL.add("position", pos); } if (useOffsets && theOffsets == null) { if (dpEnum.startOffset() == -1) { useOffsets = false; } else { theOffsets = new NamedList<Number>(); termInfo.add("offsets", theOffsets); } } if (theOffsets != null) { theOffsets.add("start", dpEnum.startOffset()); theOffsets.add("end", dpEnum.endOffset()); } } } int df = 0; if (fieldOptions.docFreq || fieldOptions.tfIdf) { df = reader.docFreq(new Term(field, text)); } if (fieldOptions.docFreq) { termInfo.add("df", df); } // TODO: this is not TF/IDF by anyone's definition! if (fieldOptions.tfIdf) { double tfIdfVal = ((double) freq) / df; termInfo.add("tf-idf", tfIdfVal); } } }
From source file:org.apache.solr.request.RegexBytesRefFilter.java
License:Apache License
@Override public boolean test(BytesRef term) { return includeString(term.utf8ToString()); }
From source file:org.apache.solr.response.transform.CitationsTransformerFactory.java
License:Apache License
private List<String> getCitationValues(SolrDocument doc, int docid) { ArrayList<String> data = new ArrayList<String>(); BytesRef ret = new BytesRef(); int[] citations = cache.getCitations(docid); if (citations != null) { for (int i = 0; i < citations.length; i++) { if (citations[i] < 0) // unresolved refs = -1 continue; if (idMapping != null) { idMapping.get(citations[i], ret); data.add(ret.utf8ToString()); } else { data.add(Integer.toString(citations[i])); }//from ww w . j av a2s.c om } } return data; }
From source file:org.apache.solr.response.transform.CitationsTransformerFactory.java
License:Apache License
private List<String> getReferenceValues(SolrDocument doc, int docid) { ArrayList<String> data = new ArrayList<String>(); BytesRef ret = new BytesRef(); int[] references = cache.getReferences(docid); if (references != null) { for (int i = 0; i < references.length; i++) { if (references[i] < 0) // unresolved refs = -1 continue; if (idMapping != null) { idMapping.get(references[i], ret); data.add(ret.utf8ToString()); } else { data.add(Integer.toString(references[i])); }/*from w w w. j a va2 s. com*/ } } return data; }
From source file:org.apache.solr.schema.EnumField.java
License:Apache License
/** * {@inheritDoc}/* w ww .j a va2s .co m*/ */ @Override public String readableToIndexed(String val) { if (val == null) return null; final BytesRef bytes = new BytesRef(NumericUtils.BUF_SIZE_LONG); readableToIndexed(val, bytes); return bytes.utf8ToString(); }
From source file:org.apache.solr.schema.EnumField.java
License:Apache License
/** * {@inheritDoc}/*from w w w .j av a 2 s .c o m*/ */ @Override public String storedToIndexed(IndexableField f) { final Number val = f.numericValue(); if (val == null) return null; final BytesRef bytes = new BytesRef(NumericUtils.BUF_SIZE_LONG); NumericUtils.intToPrefixCoded(val.intValue(), 0, bytes); return bytes.utf8ToString(); }