Examples of TermVectorOffsetInfo


Examples of org.apache.lucene.index.TermVectorOffsetInfo

          termDocumentInformationFactory.payloads.add(null);
        }

        if (eField_Tokens.getKey().isStoreOffsetWithTermVector()) {

          termDocumentInformationFactory.termOffsets.add(new TermVectorOffsetInfo(fieldSetting.offset + token.startOffset(), fieldSetting.offset + token.endOffset()));
          lastOffset = fieldSetting.offset + token.endOffset();
        }


      }
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

                } else {
                    TermVectorOffsetInfo[] tmp = info;
                    info = new TermVectorOffsetInfo[tmp.length + 1];
                    System.arraycopy(tmp, 0, info, 0, tmp.length);
                }
                info[info.length - 1] = new TermVectorOffsetInfo(
                    offset.startOffset(), offset.endOffset());
                termMap.put(termText, info);
            }
            ts.end();
            ts.close();
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

        }
        if (useOffsets == true) {
          NamedList theOffsets = new NamedList();
          termInfo.add("offsets", theOffsets);
          for (int i = 0; i < offsets.length; i++) {
            TermVectorOffsetInfo offset = offsets[i];
            theOffsets.add("start", offset.getStartOffset());
            theOffsets.add("end", offset.getEndOffset());
          }
        }
        if (usePositions == true) {
          NamedList positionsNL = new NamedList();
          for (int i = 0; i < positions.length; i++) {
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

        public void trim() {
            int end = startOffset + (mergeGap / 2);
            Iterator it = offsetInfosList.iterator();
            while (it.hasNext()) {
                TermVectorOffsetInfo tvoi = (TermVectorOffsetInfo) it.next();
                if (tvoi.getStartOffset() > end) {
                    it.remove();
                }
            }
        }
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

            sb.append(Text.encodeIllegalXMLCharacters(
                    new String(cbuf, skippedChars, cbuf.length - skippedChars)));

            // iterate terms
            for (Iterator iter = fi.iterator(); iter.hasNext();) {
                TermVectorOffsetInfo ti = (TermVectorOffsetInfo) iter.next();
                nextStart = ti.getStartOffset();
                if (nextStart - pos > 0) {
                    cbuf = new char[nextStart - pos];
                    int charsRead = reader.read(cbuf, 0, nextStart - pos);
                    pos += (nextStart - pos);
                    sb.append(cbuf, 0, charsRead);
                }
                sb.append(hlStart);
                nextStart = ti.getEndOffset();
                // print term
                cbuf = new char[nextStart - pos];
                reader.read(cbuf, 0, nextStart - pos);
                pos += (nextStart - pos);
                sb.append(cbuf);
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

            sb.append(escape(new String(cbuf, skippedChars, cbuf.length
                    - skippedChars)));

            // iterate terms
            for (Iterator iter = fi.iterator(); iter.hasNext();) {
                TermVectorOffsetInfo ti = (TermVectorOffsetInfo) iter.next();
                nextStart = ti.getStartOffset();
                if (nextStart - pos > 0) {
                    cbuf = new char[nextStart - pos];
                    int charsRead = reader.read(cbuf, 0, nextStart - pos);
                    pos += (nextStart - pos);
                    sb.append(escape(new String(cbuf, 0, charsRead)));
                }
                sb.append(hlStart);
                nextStart = ti.getEndOffset();
                // print term
                cbuf = new char[nextStart - pos];
                reader.read(cbuf, 0, nextStart - pos);
                pos += (nextStart - pos);
                sb.append(escape(new String(cbuf)));
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

        public void trim() {
            int end = startOffset + (mergeGap / 2);
            Iterator it = offsetInfosList.iterator();
            while (it.hasNext()) {
                TermVectorOffsetInfo tvoi = (TermVectorOffsetInfo) it.next();
                if (tvoi.getStartOffset() > end) {
                    it.remove();
                }
            }
        }
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

        while (it.hasNext()) {
            FragmentInfo fi = (FragmentInfo) it.next();
            boolean overlap = false;
            Iterator fit = fi.iterator();
            while (fit.hasNext() && !overlap) {
                TermVectorOffsetInfo oi = (TermVectorOffsetInfo) fit.next();
                if (offsetInfos.containsKey(oi)) {
                    overlap = true;
                }
            }
            if (overlap) {
                it.remove();
            } else {
                Iterator oit = fi.iterator();
                while (oit.hasNext()) {
                    offsetInfos.put(oit.next(), null);
                }
            }
        }

        // create excerpts
        StringBuffer sb = new StringBuffer(excerptStart);
        it = infos.iterator();
        while (it.hasNext()) {
            FragmentInfo fi = (FragmentInfo) it.next();
            sb.append(fragmentStart);
            int limit = Math.max(0, fi.getStartOffset() / 2 + fi.getEndOffset() / 2 - surround);
            int len = startFragment(sb, text, fi.getStartOffset(), limit);
            TermVectorOffsetInfo lastOffsetInfo = null;
            Iterator fIt = fi.iterator();
            while (fIt.hasNext()) {
                TermVectorOffsetInfo oi = (TermVectorOffsetInfo) fIt.next();
                if (lastOffsetInfo != null) {
                    // fill in text between terms
                    sb.append(escape(text.substring(
                            lastOffsetInfo.getEndOffset(), oi.getStartOffset())));
                }
                sb.append(hlStart);
                sb.append(escape(text.substring(oi.getStartOffset(),
                        oi.getEndOffset())));
                sb.append(hlEnd);
                lastOffsetInfo = oi;
            }
            limit = Math.min(text.length(), fi.getStartOffset() - len
                    + (surround * 2));
 
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

        }
        if (useOffsets == true) {
          NamedList theOffsets = new NamedList();
          termInfo.add("offsets", theOffsets);
          for (int i = 0; i < offsets.length; i++) {
            TermVectorOffsetInfo offset = offsets[i];
            theOffsets.add("start", offset.getStartOffset());
            theOffsets.add("end", offset.getEndOffset());
          }
        }
        if (usePositions == true) {
          NamedList positionsNL = new NamedList();
          for (int i = 0; i < positions.length; i++) {
View Full Code Here

Examples of org.apache.lucene.index.TermVectorOffsetInfo

        while (it.hasNext()) {
            FragmentInfo fi = it.next();
            boolean overlap = false;
            Iterator<TermVectorOffsetInfo> fit = fi.iterator();
            while (fit.hasNext() && !overlap) {
                TermVectorOffsetInfo oi = fit.next();
                if (offsetInfos.containsKey(oi)) {
                    overlap = true;
                }
            }
            if (overlap) {
                it.remove();
            } else {
                Iterator<TermVectorOffsetInfo> oit = fi.iterator();
                while (oit.hasNext()) {
                    offsetInfos.put(oit.next(), null);
                }
            }
        }

        // create excerpts
        StringBuffer sb = new StringBuffer(excerptStart);
        it = infos.iterator();
        while (it.hasNext()) {
            FragmentInfo fi = it.next();
            sb.append(fragmentStart);
            int limit = Math.max(0, fi.getStartOffset() / 2 + fi.getEndOffset() / 2 - surround);
            int len = startFragment(sb, text, fi.getStartOffset(), limit);
            TermVectorOffsetInfo lastOffsetInfo = null;
            Iterator<TermVectorOffsetInfo> fIt = fi.iterator();
            while (fIt.hasNext()) {
                TermVectorOffsetInfo oi = fIt.next();
                if (lastOffsetInfo != null) {
                    // fill in text between terms
                    sb.append(text.substring(lastOffsetInfo.getEndOffset(), oi.getStartOffset()));
                }
                sb.append(hlStart);
                sb.append(text.substring(oi.getStartOffset(), oi.getEndOffset()));
                sb.append(hlEnd);
                lastOffsetInfo = oi;
            }
            limit = Math.min(text.length(), fi.getStartOffset() - len + (surround * 2));
            endFragment(sb, text, fi.getEndOffset(), limit);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.