public class DefaultSolrHighlighter extends SolrHighlighter implements PluginInfoInitialized
Modifier and Type | Field and Description |
---|---|
private boolean |
initialized |
static org.slf4j.Logger |
log |
private SolrCore |
solrCore |
boundaryScanners, encoders, formatters, fragListBuilders, fragmenters, fragmentsBuilders
Constructor and Description |
---|
DefaultSolrHighlighter() |
DefaultSolrHighlighter(SolrCore solrCore) |
Modifier and Type | Method and Description |
---|---|
private void |
alternateField(NamedList docSummaries,
SolrParams params,
org.apache.lucene.document.Document doc,
java.lang.String fieldName) |
private org.apache.lucene.analysis.TokenStream |
createAnalyzerTStream(IndexSchema schema,
java.lang.String fieldName,
java.lang.String docText) |
NamedList<java.lang.Object> |
doHighlighting(DocList docs,
org.apache.lucene.search.Query query,
SolrQueryRequest req,
java.lang.String[] defaultFields)
Generates a list of Highlighted query fragments for each item in a list
of documents, or returns null if highlighting is disabled.
|
private void |
doHighlightingByFastVectorHighlighter(org.apache.lucene.search.vectorhighlight.FastVectorHighlighter highlighter,
org.apache.lucene.search.vectorhighlight.FieldQuery fieldQuery,
SolrQueryRequest req,
NamedList docSummaries,
int docId,
org.apache.lucene.document.Document doc,
java.lang.String fieldName) |
private void |
doHighlightingByHighlighter(org.apache.lucene.search.Query query,
SolrQueryRequest req,
NamedList docSummaries,
int docId,
org.apache.lucene.document.Document doc,
java.lang.String fieldName) |
private org.apache.lucene.search.vectorhighlight.BoundaryScanner |
getBoundaryScanner(java.lang.String fieldName,
SolrParams params) |
protected org.apache.lucene.search.highlight.Encoder |
getEncoder(java.lang.String fieldName,
SolrParams params)
Return an
Encoder appropriate for this field. |
protected org.apache.lucene.search.highlight.Formatter |
getFormatter(java.lang.String fieldName,
SolrParams params)
Return a
Formatter appropriate for this field. |
protected org.apache.lucene.search.vectorhighlight.FragListBuilder |
getFragListBuilder(java.lang.String fieldName,
SolrParams params) |
protected org.apache.lucene.search.highlight.Fragmenter |
getFragmenter(java.lang.String fieldName,
SolrParams params)
Return a
Fragmenter appropriate for this field. |
protected org.apache.lucene.search.vectorhighlight.FragmentsBuilder |
getFragmentsBuilder(java.lang.String fieldName,
SolrParams params) |
protected org.apache.lucene.search.highlight.Highlighter |
getHighlighter(org.apache.lucene.search.Query query,
java.lang.String fieldName,
SolrQueryRequest request)
Return a
Highlighter appropriate for this field. |
protected int |
getMaxSnippets(java.lang.String fieldName,
SolrParams params)
Return the max number of snippets for this field.
|
protected org.apache.lucene.search.highlight.Highlighter |
getPhraseHighlighter(org.apache.lucene.search.Query query,
java.lang.String fieldName,
SolrQueryRequest request,
org.apache.lucene.analysis.CachingTokenFilter tokenStream)
Return a phrase
Highlighter appropriate for this field. |
private org.apache.lucene.search.highlight.Scorer |
getQueryScorer(org.apache.lucene.search.Query query,
java.lang.String fieldName,
SolrQueryRequest request)
Return a
Scorer suitable for this Query and field. |
private SolrFragmentsBuilder |
getSolrFragmentsBuilder(java.lang.String fieldName,
SolrParams params) |
private org.apache.lucene.search.highlight.QueryScorer |
getSpanQueryScorer(org.apache.lucene.search.Query query,
java.lang.String fieldName,
org.apache.lucene.analysis.TokenStream tokenStream,
SolrQueryRequest request)
Return a
QueryScorer suitable for this Query and field. |
void |
init(PluginInfo info) |
void |
initalize(SolrConfig config)
Deprecated.
|
protected boolean |
isMergeContiguousFragments(java.lang.String fieldName,
SolrParams params)
Return whether adjacent fragments should be merged.
|
private boolean |
useFastVectorHighlighter(SolrParams params,
IndexSchema schema,
java.lang.String fieldName) |
emptyArray, getHighlightFields, isHighlightingEnabled
public static org.slf4j.Logger log
private SolrCore solrCore
private boolean initialized
public DefaultSolrHighlighter()
public DefaultSolrHighlighter(SolrCore solrCore)
public void init(PluginInfo info)
init
in interface PluginInfoInitialized
@Deprecated public void initalize(SolrConfig config)
initalize
in class SolrHighlighter
protected org.apache.lucene.search.highlight.Highlighter getPhraseHighlighter(org.apache.lucene.search.Query query, java.lang.String fieldName, SolrQueryRequest request, org.apache.lucene.analysis.CachingTokenFilter tokenStream) throws java.io.IOException
Highlighter
appropriate for this field.query
- The current QueryfieldName
- The name of the fieldrequest
- The current SolrQueryRequesttokenStream
- document text CachingTokenStreamjava.io.IOException
protected org.apache.lucene.search.highlight.Highlighter getHighlighter(org.apache.lucene.search.Query query, java.lang.String fieldName, SolrQueryRequest request)
Highlighter
appropriate for this field.query
- The current QueryfieldName
- The name of the fieldrequest
- The current SolrQueryRequestprivate org.apache.lucene.search.highlight.QueryScorer getSpanQueryScorer(org.apache.lucene.search.Query query, java.lang.String fieldName, org.apache.lucene.analysis.TokenStream tokenStream, SolrQueryRequest request) throws java.io.IOException
QueryScorer
suitable for this Query and field.query
- The current querytokenStream
- document text CachingTokenStreamfieldName
- The name of the fieldrequest
- The SolrQueryRequestjava.io.IOException
private org.apache.lucene.search.highlight.Scorer getQueryScorer(org.apache.lucene.search.Query query, java.lang.String fieldName, SolrQueryRequest request)
Scorer
suitable for this Query and field.query
- The current queryfieldName
- The name of the fieldrequest
- The SolrQueryRequestprotected int getMaxSnippets(java.lang.String fieldName, SolrParams params)
fieldName
- The name of the fieldparams
- The params controlling Highlightingprotected boolean isMergeContiguousFragments(java.lang.String fieldName, SolrParams params)
fieldName
- The name of the fieldparams
- The params controlling Highlightingprotected org.apache.lucene.search.highlight.Formatter getFormatter(java.lang.String fieldName, SolrParams params)
Formatter
appropriate for this field. If a formatter
has not been configured for this field, fall back to the configured
default or the solr default (SimpleHTMLFormatter
).fieldName
- The name of the fieldparams
- The params controlling HighlightingFormatter
.protected org.apache.lucene.search.highlight.Encoder getEncoder(java.lang.String fieldName, SolrParams params)
Encoder
appropriate for this field. If an encoder
has not been configured for this field, fall back to the configured
default or the solr default (DefaultEncoder
).fieldName
- The name of the fieldparams
- The params controlling HighlightingEncoder
.protected org.apache.lucene.search.highlight.Fragmenter getFragmenter(java.lang.String fieldName, SolrParams params)
Fragmenter
appropriate for this field. If a fragmenter
has not been configured for this field, fall back to the configured
default or the solr default (GapFragmenter
).fieldName
- The name of the fieldparams
- The params controlling HighlightingFragmenter
.protected org.apache.lucene.search.vectorhighlight.FragListBuilder getFragListBuilder(java.lang.String fieldName, SolrParams params)
protected org.apache.lucene.search.vectorhighlight.FragmentsBuilder getFragmentsBuilder(java.lang.String fieldName, SolrParams params)
private SolrFragmentsBuilder getSolrFragmentsBuilder(java.lang.String fieldName, SolrParams params)
private org.apache.lucene.search.vectorhighlight.BoundaryScanner getBoundaryScanner(java.lang.String fieldName, SolrParams params)
public NamedList<java.lang.Object> doHighlighting(DocList docs, org.apache.lucene.search.Query query, SolrQueryRequest req, java.lang.String[] defaultFields) throws java.io.IOException
doHighlighting
in class SolrHighlighter
docs
- query resultsquery
- the queryreq
- the current requestdefaultFields
- default list of fields to summarizejava.io.IOException
private boolean useFastVectorHighlighter(SolrParams params, IndexSchema schema, java.lang.String fieldName)
private void doHighlightingByHighlighter(org.apache.lucene.search.Query query, SolrQueryRequest req, NamedList docSummaries, int docId, org.apache.lucene.document.Document doc, java.lang.String fieldName) throws java.io.IOException
java.io.IOException
private void doHighlightingByFastVectorHighlighter(org.apache.lucene.search.vectorhighlight.FastVectorHighlighter highlighter, org.apache.lucene.search.vectorhighlight.FieldQuery fieldQuery, SolrQueryRequest req, NamedList docSummaries, int docId, org.apache.lucene.document.Document doc, java.lang.String fieldName) throws java.io.IOException
java.io.IOException
private void alternateField(NamedList docSummaries, SolrParams params, org.apache.lucene.document.Document doc, java.lang.String fieldName)
private org.apache.lucene.analysis.TokenStream createAnalyzerTStream(IndexSchema schema, java.lang.String fieldName, java.lang.String docText) throws java.io.IOException
java.io.IOException