Class BaseFragmentsBuilder
java.lang.Object
org.apache.lucene.search.vectorhighlight.BaseFragmentsBuilder
- All Implemented Interfaces:
FragmentsBuilder
- Direct Known Subclasses:
ScoreOrderFragmentsBuilder,SimpleFragmentsBuilder
Base FragmentsBuilder implementation that supports colored pre/post
tags and multivalued fields.
Uses BoundaryScanner to determine fragments.
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptioncreateFragment(IndexReader reader, int docId, String fieldName, FieldFragList fieldFragList) create a fragment.createFragment(IndexReader reader, int docId, String fieldName, FieldFragList fieldFragList, String[] preTags, String[] postTags, Encoder encoder) create a fragment.String[]createFragments(IndexReader reader, int docId, String fieldName, FieldFragList fieldFragList, int maxNumFragments) create multiple fragments.String[]createFragments(IndexReader reader, int docId, String fieldName, FieldFragList fieldFragList, int maxNumFragments, String[] preTags, String[] postTags, Encoder encoder) create multiple fragments.charabstract List<FieldFragList.WeightedFragInfo> booleanvoidsetDiscreteMultiValueHighlighting(boolean discreteMultiValueHighlighting) voidsetMultiValuedSeparator(char separator)
-
Field Details
-
COLORED_PRE_TAGS
-
COLORED_POST_TAGS
-
-
Method Details
-
getWeightedFragInfoList
public abstract List<FieldFragList.WeightedFragInfo> getWeightedFragInfoList(List<FieldFragList.WeightedFragInfo> src) -
createFragment
public String createFragment(IndexReader reader, int docId, String fieldName, FieldFragList fieldFragList) throws IOException Description copied from interface:FragmentsBuildercreate a fragment.- Specified by:
createFragmentin interfaceFragmentsBuilder- Parameters:
reader- IndexReader of the indexdocId- document id to be highlightedfieldName- field of the document to be highlightedfieldFragList- FieldFragList object- Returns:
- a created fragment or null when no fragment created
- Throws:
IOException- If there is a low-level I/O error
-
createFragments
public String[] createFragments(IndexReader reader, int docId, String fieldName, FieldFragList fieldFragList, int maxNumFragments) throws IOException Description copied from interface:FragmentsBuildercreate multiple fragments.- Specified by:
createFragmentsin interfaceFragmentsBuilder- Parameters:
reader- IndexReader of the indexdocId- document id to be highlighterfieldName- field of the document to be highlightedfieldFragList- FieldFragList objectmaxNumFragments- maximum number of fragments- Returns:
- created fragments or null when no fragments created. size of the array can be less than maxNumFragments
- Throws:
IOException- If there is a low-level I/O error
-
createFragment
public String createFragment(IndexReader reader, int docId, String fieldName, FieldFragList fieldFragList, String[] preTags, String[] postTags, Encoder encoder) throws IOException Description copied from interface:FragmentsBuildercreate a fragment.- Specified by:
createFragmentin interfaceFragmentsBuilder- Parameters:
reader- IndexReader of the indexdocId- document id to be highlightedfieldName- field of the document to be highlightedfieldFragList- FieldFragList objectpreTags- pre-tags to be used to highlight termspostTags- post-tags to be used to highlight termsencoder- an encoder that generates encoded text- Returns:
- a created fragment or null when no fragment created
- Throws:
IOException- If there is a low-level I/O error
-
createFragments
public String[] createFragments(IndexReader reader, int docId, String fieldName, FieldFragList fieldFragList, int maxNumFragments, String[] preTags, String[] postTags, Encoder encoder) throws IOException Description copied from interface:FragmentsBuildercreate multiple fragments.- Specified by:
createFragmentsin interfaceFragmentsBuilder- Parameters:
reader- IndexReader of the indexdocId- document id to be highlighterfieldName- field of the document to be highlightedfieldFragList- FieldFragList objectmaxNumFragments- maximum number of fragmentspreTags- pre-tags to be used to highlight termspostTags- post-tags to be used to highlight termsencoder- an encoder that generates encoded text- Returns:
- created fragments or null when no fragments created. size of the array can be less than maxNumFragments
- Throws:
IOException- If there is a low-level I/O error
-
setMultiValuedSeparator
public void setMultiValuedSeparator(char separator) -
getMultiValuedSeparator
public char getMultiValuedSeparator() -
isDiscreteMultiValueHighlighting
public boolean isDiscreteMultiValueHighlighting() -
setDiscreteMultiValueHighlighting
public void setDiscreteMultiValueHighlighting(boolean discreteMultiValueHighlighting)
-