org.apache.lucene.queryparser.flexible.standard.nodes

## Class NumericQueryNode

- java.lang.Object
- - org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl
  - - org.apache.lucene.queryparser.flexible.standard.nodes.NumericQueryNode

All Implemented Interfaces:
  Cloneable, FieldableNode, FieldValuePairQueryNode<Number>, QueryNode, ValueQueryNode<Number>

    public class NumericQueryNode
    extends QueryNodeImpl
    implements FieldValuePairQueryNode<Number>

This query node represents a field query that holds a numeric value. It is similar to `FieldQueryNode`, however the `getValue()` returns a `Number`.

See Also:
  `NumericConfig`

### Field Summary

### Fields inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl

`PLAINTEXT_FIELD_NAME, toQueryStringIgnoreFields`

### Constructor Summary

Constructors
Constructor and Description
`NumericQueryNode(CharSequence field, Number value, NumberFormat numberFormat)` Creates a `NumericQueryNode` object using the given field, `Number` value and `NumberFormat` used to convert the value to `String`.

### Method Summary

Methods
`CharSequence` `getField()` Returns the field associated with this node.
`NumberFormat` `getNumberFormat()` Returns the `NumberFormat` used to convert the value to `String`.
`protected CharSequence` `getTermEscaped(EscapeQuerySyntax escaper)` This method is used to get the value converted to `String` and escaped using the given `EscapeQuerySyntax`.
`Number` `getValue()` Returns the numeric value as `Number`.
`void` `setField(CharSequence fieldName)` Sets the field associated with this node.
`void` `setNumberFormat(NumberFormat format)` Sets the `NumberFormat` used to convert the value to `String`.
`void` `setValue(Number value)` Sets the numeric value.
`CharSequence` `toQueryString(EscapeQuerySyntax escapeSyntaxParser)` convert to a query string understood by the query parser
`String` `toString()` Every implementation of this class should return pseudo xml like this: For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>

### Methods inherited from class org.apache.lucene.queryparser.flexible.core.nodes.QueryNodeImpl

`add, add, allocate, clone, cloneTree, containsTag, getChildren, getParent, getTag, getTagMap, isDefaultField, isLeaf, isRoot, set, setLeaf, setTag, unsetTag`

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

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

### Methods inherited from interface org.apache.lucene.queryparser.flexible.core.nodes.QueryNode

`add, add, cloneTree, containsTag, getChildren, getParent, getTag, getTagMap, isLeaf, set, setTag, unsetTag`

### Constructor Detail

#### NumericQueryNode

    public NumericQueryNode(CharSequence field,
                    Number value,
                    NumberFormat numberFormat)

Creates a `NumericQueryNode` object using the given field, `Number` value and `NumberFormat` used to convert the value to `String`.

Parameters:
  `field` - the field associated with this query node
  `value` - the value hold by this node
  `numberFormat` - the `NumberFormat` used to convert the value to `String`

### Method Detail

#### getField

    public CharSequence getField()

Returns the field associated with this node.

Specified by:
  `getField` in interface `FieldableNode`
Returns:
  the field associated with this node

#### setField

    public void setField(CharSequence fieldName)

Sets the field associated with this node.

Specified by:
  `setField` in interface `FieldableNode`
Parameters:
  `fieldName` - the field associated with this node

#### getTermEscaped

    protected CharSequence getTermEscaped(EscapeQuerySyntax escaper)

This method is used to get the value converted to `String` and escaped using the given `EscapeQuerySyntax`.

Parameters:
  `escaper` - the `EscapeQuerySyntax` used to escape the value `String`
Returns:
  the value converte to `String` and escaped

#### toQueryString

    public CharSequence toQueryString(EscapeQuerySyntax escapeSyntaxParser)

Description copied from interface: `QueryNode`
convert to a query string understood by the query parser

Specified by:
  `toQueryString` in interface `QueryNode`

#### setNumberFormat

    public void setNumberFormat(NumberFormat format)

Sets the `NumberFormat` used to convert the value to `String`.

Parameters:
  `format` - the `NumberFormat` used to convert the value to `String`

#### getNumberFormat

    public NumberFormat getNumberFormat()

Returns the `NumberFormat` used to convert the value to `String`.

Returns:
  the `NumberFormat` used to convert the value to `String`

#### getValue

    public Number getValue()

Returns the numeric value as `Number`.

Specified by:
  `getValue` in interface `ValueQueryNode<Number>`
Returns:
  the numeric value

#### setValue

    public void setValue(Number value)

Sets the numeric value.

Specified by:
  `setValue` in interface `ValueQueryNode<Number>`
Parameters:
  `value` - the numeric value

#### toString

    public String toString()

Description copied from class: `QueryNodeImpl`
Every implementation of this class should return pseudo xml like this: For FieldQueryNode: <field start='1' end='2' field='subject' text='foo'/>

Specified by:
  `toString` in interface `QueryNode`
Overrides:
  `toString` in class `QueryNodeImpl`
See Also:
  `QueryNode.toString()`