Package org.apache.lucene.search.uhighlight

# Class DefaultPassageFormatter

java.lang.Object
org.apache.lucene.search.uhighlight.PassageFormatter
org.apache.lucene.search.uhighlight.DefaultPassageFormatter

public class DefaultPassageFormatter extends PassageFormatter
Creates a formatted snippet from the top passages.

The default implementation marks the query terms as bold, and places ellipses between unconnected passages.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final String`
  `ellipsis`
  text that will appear between two unconnected passages
  `protected final boolean`
  `escape`
  true if we should escape for html
  `protected final String`
  `postTag`
  text that will appear after highlighted terms
  `protected final String`
  `preTag`
  text that will appear before highlighted terms

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `DefaultPassageFormatter()`
  Creates a new DefaultPassageFormatter with the default tags.
  `DefaultPassageFormatter(String preTag, String postTag, String ellipsis, boolean escape)`
  Creates a new DefaultPassageFormatter with custom tags.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected void`
  `append(StringBuilder dest, String content, int start, int end)`
  Appends original text to the response.
  `String`
  `format(Passage[] passages, String content)`
  Formats the top `passages` from `content` into a human-readable text snippet.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### preTag

    protected final String preTag
    text that will appear before highlighted terms

  - ### postTag

    protected final String postTag
    text that will appear after highlighted terms

  - ### ellipsis

    protected final String ellipsis
    text that will appear between two unconnected passages

  - ### escape

    protected final boolean escape
    true if we should escape for html

- ## Constructor Details

  - ### DefaultPassageFormatter

    public DefaultPassageFormatter()
    Creates a new DefaultPassageFormatter with the default tags.

  - ### DefaultPassageFormatter

    public DefaultPassageFormatter(String preTag, String postTag, String ellipsis, boolean escape)
    Creates a new DefaultPassageFormatter with custom tags.
    Parameters:
      `preTag` - text which should appear before a highlighted term.
      `postTag` - text which should appear after a highlighted term.
      `ellipsis` - text which should be used to connect two unconnected passages.
      `escape` - true if text should be html-escaped

- ## Method Details

  - ### format

    public String format(Passage[] passages, String content)
    Description copied from class: `PassageFormatter`
    Formats the top `passages` from `content` into a human-readable text snippet.
    Specified by:
      `format` in class `PassageFormatter`
    Parameters:
      `passages` - top-N passages for the field. Note these are sorted in the order that they appear in the document for convenience.
      `content` - content for the field.
    Returns:
      formatted highlight. Note that for the non-expert APIs in `UnifiedHighlighter` that return String, the toString method on the Object returned by this method is used to compute the string.

  - ### append

    protected void append(StringBuilder dest, String content, int start, int end)
    Appends original text to the response.
    Parameters:
      `dest` - resulting text, possibly transformed or encoded
      `content` - original text content
      `start` - index of the first character in content
      `end` - index of the character following the last character in content