## Package org.apache.lucene.queryParser.core.config

Contains the base classes used to configure the query processing

See:
Description

Interface Summary
ConfigAttribute: Deprecated.
FieldConfigListener: This interface should be implemented by classes that wants to listen for field configuration requests.

Class Summary
AbstractQueryConfig: This class is the base of `QueryConfigHandler` and `FieldConfig`.
ConfigurationKey<T>: An instance of this class represents a key that is used to retrieve a value from `AbstractQueryConfig`.
FieldConfig: This class represents a field configuration.
QueryConfigHandler: This class can be used to hold any query configuration and no field configuration.

## Package org.apache.lucene.queryParser.core.config Description

Contains the base classes used to configure the query processing

## Query Configuration Interfaces

The package `org.apache.lucene.queryParser.core.config` contains query configuration handler abstract class that all config handlers should extend.

See `StandardQueryConfigHandler` for a reference implementation.

The `QueryConfigHandler` and `FieldConfig` are used in the processors to access config information in a flexible and independent way. See `ParametricRangeQueryNodeProcessor` for a reference implementation.

Since version 3.4, the configuration API has changed. It no longer uses `Attribute` objects to configure a query parser. Instead, it uses `ConfigurationKey` objects to set any configuration to a `QueryConfigHandler`. For now, both configuration APIs are working, however, they cannot be used at the same time. So if you start moving your code to the new API, move it completely or keep using the old API.

Here is an example about how the new configuration API works:

>     ...
>     // this constant will be the key to get and set your configuration. This should be unique in your application.
>     final public static ConfigurationKey<NumberFormat> MY_CONFIG = ConfigurationKey.newInstance();
>     ...
>     // make sure to use your unique key instance to set and get your configuration
>     queryConfigHandler.set(MY_CONFIG, NumberFormat.getInstance());
>     NumberFormat numberFormat = queryConfigHandler.get(MY_CONFIG);
>     ...