org.apache.geode.cache.lucene

## Interface LuceneQueryProvider

- All Superinterfaces:
    java.io.Serializable
  All Known Implementing Classes:
    LuceneTestUtilities.FloatRangeQueryProvider, LuceneTestUtilities.IntRangeQueryProvider
  Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

      @FunctionalInterface
      public interface LuceneQueryProvider
      extends java.io.Serializable

  A factory for `Query` objects. An implementation of this interface is required by `LuceneQueryFactory.create(String, String, LuceneQueryProvider)` so that a query can be serialized and distributed to multiple nodes.

  Instances of this interface are serialized using the standard `DataSerializer.writeObject(Object, DataOutput)`,

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `Query` | `getQuery(LuceneIndex index)`

- - ### Method Detail

    - #### getQuery

          Query getQuery(LuceneIndex index)
                  throws LuceneQueryException

      Parameters:
        `index` - The `LuceneIndex` the query is being executed against.
      Returns:
        A `Query` which will be executed against a Lucene index.
      Throws:
        `LuceneQueryException` - if the provider fails to construct the query object. This will be propagated to callers of the `LuceneQuery` find methods.