org.apache.lucene.queryparser.flexible.core.config

## Class AbstractQueryConfig

- java.lang.Object
- - org.apache.lucene.queryparser.flexible.core.config.AbstractQueryConfig

Direct Known Subclasses:
  FieldConfig, QueryConfigHandler

    public abstract class AbstractQueryConfig
    extends Object

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` instance and it also holds the value's type.

See Also:
  `ConfigurationKey`

### Method Summary

All Methods Instance Methods Concrete Methods
`<T> T` `get(ConfigurationKey<T> key)` Returns the value held by the given key.
`<T> boolean` `has(ConfigurationKey<T> key)` Returns true if there is a value set with the given key, otherwise false.
`<T> void` `set(ConfigurationKey<T> key, T value)` Sets a key and its value.
`<T> boolean` `unset(ConfigurationKey<T> key)` Unsets the given key and its value.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### get

    public <T> T get(ConfigurationKey<T> key)

Returns the value held by the given key.

Type Parameters:
  `T` - the value's type
Parameters:
  `key` - the key, cannot be `null`
Returns:
  the value held by the given key

#### has

    public <T> boolean has(ConfigurationKey<T> key)

Returns true if there is a value set with the given key, otherwise false.

Type Parameters:
  `T` - the value's type
Parameters:
  `key` - the key, cannot be `null`
Returns:
  true if there is a value set with the given key, otherwise false

#### set

    public <T> void set(ConfigurationKey<T> key,
                        T value)

Sets a key and its value.

Type Parameters:
  `T` - the value's type
Parameters:
  `key` - the key, cannot be `null`
  `value` - value to set

#### unset

    public <T> boolean unset(ConfigurationKey<T> key)

Unsets the given key and its value.

Type Parameters:
  `T` - the value's type
Parameters:
  `key` - the key
Returns:
  true if the key and value was set and removed, otherwise false