Interface LuceneQueryMapper<T extends SearchQuery>

All Known Subinterfaces:
LuceneSearchMapper
All Known Implementing Classes:
AbstractTextFieldQueryMapper, AllQueryMapper, BooleanQueryMapper, ConstantScoreQueryMapper, ContentPermissionsQueryMapper, DelegatingLuceneSearchMapper, DoubleRangeQueryMapper, FieldExistsQueryMapper, FunctionScoreQueryMapper, IntegerRangeQueryMapper, LongRangeQueryMapper, MatchNoDocsQueryMapper, PhraseQueryMapper, PrefixQueryMapper, QueryStringQueryMapper, SiteSearchPermissionsQueryMapper, SiteTextSearchQueryMapper, SpacePermissionQueryMapper, SpanNearQueryMapper, TermQueryMapper, TermRangeQueryMapper, TermSetQueryMapper, TextFieldQueryMapper, WildcardTextFieldQueryMapper

public interface LuceneQueryMapper<T extends SearchQuery>
A lucene query mapper represents an object that is able to map from a Confluence SearchQuery to a Lucene Query. Every SearchPrimitive query must have a corresponding mapper.

Implementations of this class will be autowired automatically.

Implementations of this class must use setter injection instead of constructor injector, as only the former is supported at the moment.

Since 7.0, if a Query can be decomposed into multiple primitive queries, it is recommended to use SearchQuery.expand() instead.

  • Method Summary

    Modifier and Type
    Method
    Description
    org.apache.lucene.search.Query
    convertToLuceneQuery(T searchQuery)
    Convert a SearchQuery into a lucene query.
  • Method Details

    • convertToLuceneQuery

      org.apache.lucene.search.Query convertToLuceneQuery(T searchQuery)
      Convert a SearchQuery into a lucene query. So a query that represents a search for any value in a particular index field should map to null.
      Parameters:
      searchQuery - the query to convert
      Returns:
      the lucene query corresponding to the search query. null can be returned and signifies that no mapped query is necessary for the mapped query.
      Throws:
      IllegalArgumentException - if the search query is null or invalid