Example usage for org.springframework.data.solr.core.query HighlightQuery getHighlightOptions

List of usage examples for org.springframework.data.solr.core.query HighlightQuery getHighlightOptions

Introduction

In this page you can find the example usage for org.springframework.data.solr.core.query HighlightQuery getHighlightOptions.

Prototype

@Nullable
HighlightOptions getHighlightOptions();

Source Link

Usage

From source file:org.springframework.data.solr.core.DefaultQueryParser.java

/**
 * Append highlighting parameters to {@link SolrQuery}
 * /*  w w w  .jav  a2 s .c  o  m*/
 * @param solrQuery
 * @param query
 */
protected void processHighlightOptions(SolrQuery solrQuery, HighlightQuery query) {
    if (query.hasHighlightOptions()) {
        HighlightOptions highlightOptions = query.getHighlightOptions();
        solrQuery.setHighlight(true);
        if (!highlightOptions.hasFields()) {
            solrQuery.addHighlightField(HighlightOptions.ALL_FIELDS.getName());
        } else {
            for (Field field : highlightOptions.getFields()) {
                solrQuery.addHighlightField(field.getName());
            }
            for (FieldWithHighlightParameters fieldWithHighlightParameters : highlightOptions
                    .getFieldsWithHighlightParameters()) {
                addPerFieldHighlightParameters(solrQuery, fieldWithHighlightParameters);
            }
        }
        for (HighlightParameter option : highlightOptions.getHighlightParameters()) {
            addOptionToSolrQuery(solrQuery, option);
        }
        if (highlightOptions.hasQuery()) {
            solrQuery.add(HighlightParams.Q, getQueryString(highlightOptions.getQuery()));
        }
    }
}