Namespace Lucene.Net.QueryParsers.Flexible.Core.Config
Base classes used to configure the query processing.
Query Configuration Interfaces
The namespace Lucene.Net.QueryParsers.Flexible.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 TermRangeQueryNodeProcessor for a reference implementation.
Classes
AbstractQueryConfig
This class is the base of QueryConfigHandler and FieldConfig. It has operations to set, unset and get configuration values.
Each configuration is is a key->value pair. The key should be an unique ConfigurationKey<T> instance and it also holds the value's type.
ConfigurationKey<T>ConfigurationKey
LUCENENET specific class used to access the NewInstance static method without referring to the ConfigurationKey{T}'s generic closing type.
ConfigurationKey<T>
An instance of this class represents a key that is used to retrieve a value from AbstractQueryConfig. It also holds the value's type, which is defined in the generic argument.
FieldConfig
This class represents a field configuration.
QueryConfigHandler
This class can be used to hold any query configuration and no field configuration. For field configuration, it creates an empty FieldConfig object and delegate it to field config listeners, these are responsible for setting up all the field configuration.
QueryConfigHandler should be extended by classes that intends to provide configuration to IQueryNodeProcessor objects.
The class that extends QueryConfigHandler should also provide FieldConfig objects for each collection field.
Interfaces
IFieldConfigListener
This interface should be implemented by classes that wants to listen for field configuration requests. The implementation receives a FieldConfig object and may add/change its configuration.