## org.apache.lucene.benchmark.byTask.tasks
Class SearchTravRetVectorHighlightTask

    java.lang.Object
      org.apache.lucene.benchmark.byTask.tasks.PerfTask
          org.apache.lucene.benchmark.byTask.tasks.ReadTask
              org.apache.lucene.benchmark.byTask.tasks.SearchTravTask
                  org.apache.lucene.benchmark.byTask.tasks.SearchTravRetVectorHighlightTask

All Implemented Interfaces:
  Cloneable

    public class SearchTravRetVectorHighlightTask

extends SearchTravTask

Search and Traverse and Retrieve docs task. Highlight the fields in the retrieved documents by using FastVectorHighlighter.

Note: This task reuses the reader if it is already open. Otherwise a reader is opened at start and closed at the end.

Takes optional multivalued, comma separated param string as: size[<traversal size>],highlight[<int>],maxFrags[<int>],mergeContiguous[<boolean>],fields[name1;name2;...]

- traversal size - The number of hits to traverse, otherwise all will be traversed
- highlight - The number of the hits to highlight. Will always be less than or equal to traversal size. Default is Integer.MAX_VALUE (i.e. hits.length())
- maxFrags - The maximum number of fragments to score by the highlighter
- fragSize - The length of fragments
- fields - The fields to highlight. If not specified all fields will be highlighted (or at least attempted)

Example:

    "SearchVecHlgtSameRdr" SearchTravRetVectorHighlight(size[10],highlight[10],maxFrags[3],fields[body]) > : 1000

Fields must be stored and term vector offsets and positions in order must be true for this task to work.

Other side effects: counts additional 1 (record) for each traversed hit, and 1 more for each retrieved (non null) document and 1 for each fragment returned.

Field Summary
`protected int` `fragSize`
`protected FastVectorHighlighter` `highlighter`
`protected int` `maxFrags`
`protected int` `numToHighlight`
`protected Set<String>` `paramFields`

Fields inherited from class org.apache.lucene.benchmark.byTask.tasks.SearchTravTask
`traversalSize`

Fields inherited from class org.apache.lucene.benchmark.byTask.tasks.PerfTask
`logStep, NEW_LINE, params, stopNow`

Constructor Summary
`SearchTravRetVectorHighlightTask(PerfRunData runData)`

Method Summary
`protected BenchmarkHighlighter` `getBenchmarkHighlighter(Query q)` Return an appropriate highlighter to be used with highlighting tasks
`protected Collection<String>` `getFieldsToHighlight(Document document)` Define the fields to highlight.
`int` `numToHighlight()` Set to the number of documents to highlight.
`void` `setParams(String params)` Set the params of this task.
`void` `setup()` Task setup work that should not be measured for that specific task.
`boolean` `withRetrieve()` Return true if, with search & results traversing, docs should be retrieved.

Methods inherited from class org.apache.lucene.benchmark.byTask.tasks.SearchTravTask
`getQueryMaker, supportsParams, traversalSize, withSearch, withTraverse, withWarm`

Methods inherited from class org.apache.lucene.benchmark.byTask.tasks.ReadTask
`createCollector, doLogic, getSort, numHits, retrieveDoc, withCollector, withMaxScore, withScore`

Methods inherited from class org.apache.lucene.benchmark.byTask.tasks.PerfTask
`clone, close, getBackgroundDeltaPriority, getDepth, getLogMessage, getName, getParams, getRunData, getRunInBackground, isDisableCounting, runAndMaybeStats, setDepth, setDisableCounting, setName, setRunInBackground, shouldNeverLogAtStart, shouldNotRecordStats, stopNow, tearDown, toString`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### numToHighlight

    protected int numToHighlight

### maxFrags

    protected int maxFrags

### fragSize

    protected int fragSize

### paramFields

    protected Set<String> paramFields

### highlighter

    protected FastVectorHighlighter highlighter

Constructor Detail

### SearchTravRetVectorHighlightTask

    public SearchTravRetVectorHighlightTask(PerfRunData runData)

Method Detail

### setup

    public void setup()
               throws Exception

  Description copied from class: `PerfTask`
  Task setup work that should not be measured for that specific task. By default it does nothing, but tasks can implement this, moving work from `PerfTask.doLogic()` to this method. Only the work done in `PerfTask.doLogic()` is measured for this task. Notice that higher level (sequence) tasks containing this task would then measure larger time than the sum of their contained tasks.

  Overrides:
    `setup` in class `ReadTask`
  Throws:
    `Exception`

### withRetrieve

    public boolean withRetrieve()

  Description copied from class: `ReadTask`
  Return true if, with search & results traversing, docs should be retrieved.

  Overrides:
    `withRetrieve` in class `SearchTravTask`

### numToHighlight

    public int numToHighlight()

  Description copied from class: `ReadTask`
  Set to the number of documents to highlight.

  Overrides:
    `numToHighlight` in class `ReadTask`
  Returns:
    The number of the results to highlight. O means no docs will be highlighted.

### getBenchmarkHighlighter

    protected BenchmarkHighlighter getBenchmarkHighlighter(Query q)

  Description copied from class: `ReadTask`
  Return an appropriate highlighter to be used with highlighting tasks

  Overrides:
    `getBenchmarkHighlighter` in class `ReadTask`

### getFieldsToHighlight

    protected Collection<String> getFieldsToHighlight(Document document)

  Description copied from class: `ReadTask`
  Define the fields to highlight. Base implementation returns all fields

  Overrides:
    `getFieldsToHighlight` in class `ReadTask`
  Parameters:
    `document` - The Document
  Returns:
    A Collection of Field names (Strings)

### setParams

    public void setParams(String params)

  Description copied from class: `PerfTask`
  Set the params of this task.

  Overrides:
    `setParams` in class `SearchTravTask`